packages feed

hs2ats-0.2.1.4: hs2ats.cabal

name:                hs2ats
version:             0.2.1.4
synopsis:            Create ATS types from Haskell types
description:         This package enables scanning Haskell source files for data types and then generating [ATS](http://www.ats-lang.org/) types from them.
homepage:            https://github.com/vmchale/hs2ats#readme
license:             BSD3
license-file:        LICENSE
author:              Vanessa McHale
maintainer:          vamchale@gmail.com
copyright:           Copyright: (c) 2018 Vanessa McHale
category:            Language, Haskell, ATS
build-type:          Simple
extra-doc-files:     README.md
cabal-version:       1.18

Flag development {
  Description: Enable `-Werror`
  manual: True
  default: False
}

library
  hs-source-dirs:      src
  exposed-modules:     Language.ATS.Generate
                     , Language.ATS.Generate.Error
  build-depends:       base >= 4.7 && < 5
                     , haskell-src-exts
                     , language-ats
                     , text
                     , cases
                     , lens
                     , optparse-generic
                     , ansi-wl-pprint
                     , composition-prelude
                     , deepseq
                     , cpphs
  default-language:    Haskell2010
  if flag(development)
    ghc-options:       -Werror
  if impl(ghc >= 8.0)
    ghc-options:       -Wincomplete-uni-patterns -Wincomplete-record-updates -Wcompat
  ghc-options:         -Wall

executable hs2ats
  hs-source-dirs:      app
  main-is:             Main.hs
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N
  build-depends:       base
                     , hs2ats
  default-language:    Haskell2010
  if flag(development)
    ghc-options:       -Werror
  if impl(ghc >= 8.0)
    ghc-options:       -Wincomplete-uni-patterns -Wincomplete-record-updates -Wcompat
  ghc-options:         -Wall

test-suite hs2ats-test
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  main-is:             Spec.hs
  build-depends:       base
                     , hs2ats
                     , hspec
                     , hspec-dirstream
                     , system-filepath
  if flag(development)
    ghc-options:       -Werror
  if impl(ghc >= 8.0)
    ghc-options:       -Wincomplete-uni-patterns -Wincomplete-record-updates -Wcompat
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N -Wall
  default-language:    Haskell2010

benchmark hs2ats-bench
  type:                exitcode-stdio-1.0
  hs-source-dirs:      bench
  main-is:             Bench.hs
  build-depends:       base
                     , hs2ats
                     , criterion
  if flag(development)
    ghc-options:       -Werror
  if impl(ghc >= 8.0)
    ghc-options:       -Wincomplete-uni-patterns -Wincomplete-record-updates -Wcompat
  ghc-options:         -Wall
  default-language:    Haskell2010

source-repository head
  type:     git
  location: https://github.com/vmchale/hs2ats