cabal-version:       2.2

name:                silkscreen
version:             0.0.0.4
synopsis:            Prettyprinting transformers.
description:         Prettyprinting transformers for rainbow parens, precedence, etc.
homepage:            https://github.com/robrix/silkscreen
bug-reports:         https://github.com/robrix/silkscreen/issues
license:             BSD-3-Clause
license-file:        LICENSE
author:              Rob Rix
maintainer:          rob.rix@me.com
copyright:           2020 Rob Rix
category:            Text
extra-source-files:
  CHANGELOG.md
  README.md

common common
  default-language: Haskell2010
  ghc-options:
    -Weverything
    -Wno-all-missed-specialisations
    -Wno-implicit-prelude
    -Wno-missed-specialisations
    -Wno-missing-import-lists
    -Wno-missing-local-signatures
    -Wno-monomorphism-restriction
    -Wno-name-shadowing
    -Wno-safe
    -Wno-unsafe
  if (impl(ghc >= 8.8))
    ghc-options: -Wno-missing-deriving-strategies
  if (impl(ghc >= 8.10))
    ghc-options:
      -Wno-missing-safe-haskell-mode
      -Wno-prepositive-qualified-module
  if (impl(ghc >= 9.2))
    ghc-options:
      -Wno-missing-kind-signatures


library
  import: common
  exposed-modules:
    Silkscreen
    Silkscreen.Nesting
    Silkscreen.Precedence
    Silkscreen.Printer.Prec
    Silkscreen.Printer.Rainbow
  build-depends:
    , base >= 4.14 && < 5
    , prettyprinter ^>= 1.7
  hs-source-dirs: src


source-repository head
  type:     git
  location: https://github.com/robrix/silkscreen
