packages feed

language-ats-1.7.1.2: language-ats.cabal

cabal-version: 1.18
name: language-ats
version: 1.7.1.2
license: BSD3
license-file: LICENSE
copyright: Copyright: (c) 2018-2019 Vanessa McHale
maintainer: vamchale@gmail.com
author: Vanessa McHale
stability: stable
synopsis: Parser and pretty-printer for ATS.
description:
    Parser and pretty-printer for [ATS](http://www.ats-lang.org/), written with Happy and Alex.
category: Language, Lexer, Parser, Pretty Printer, ATS
build-type: Simple
data-files:
    test/data/*.dats
    test/data/*.sats
    test/data/*.out
    test/data/stdlib/*.sats
    test/data/stdlib/*.out
    test/data/stdlib/DATS/*.dats
    test/data/stdlib/DATS/*.out
extra-doc-files: README.md
                 CHANGELOG.md

source-repository head
    type: darcs
    location: https://hub.darcs.net/vmchale/ats

flag cross
    description:
        Set this flag if cross-compiling
    default: False
    manual: True

flag development
    description:
        Enable `-Werror`
    default: False
    manual: True

library
    exposed-modules:
        Language.ATS
    hs-source-dirs: src
    other-modules:
        Language.ATS.Lexer
        Language.ATS.Parser
        Language.ATS.PrettyPrint
        Language.ATS.Types
        Language.ATS.Types.Lens
        Language.ATS.Rewrite
    default-language: Haskell2010
    other-extensions: OverloadedStrings DeriveGeneric DeriveAnyClass
                      FlexibleContexts PatternSynonyms StandaloneDeriving
                      GeneralizedNewtypeDeriving DerivingStrategies DuplicateRecordFields
                      DeriveFunctor ScopedTypeVariables
    ghc-options: -Wall -O2
    build-depends:
        base >=4.9 && <5,
        array -any,
        recursion >=2.2.3.0,
        microlens >=0.3.0.0,
        deepseq -any,
        ansi-wl-pprint >=0.6.8,
        composition-prelude >=2.0.4.0,
        containers -any,
        transformers -any

    if !flag(cross)
        build-tools: happy >=1.17.1, alex -any

    if flag(development)
        ghc-options: -Werror

    if impl(ghc >=8.0)
        ghc-options: -Wincomplete-uni-patterns -Wincomplete-record-updates
                     -Wcompat

test-suite language-ats-test
    type: exitcode-stdio-1.0
    main-is: Spec.hs
    hs-source-dirs: test
    default-language: Haskell2010
    ghc-options: -threaded -rtsopts -with-rtsopts=-N -Wall
    build-depends:
        base -any,
        language-ats -any,
        hspec -any,
        hspec-dirstream -any,
        system-filepath -any

    if flag(development)
        ghc-options: -Werror

    if impl(ghc >=8.0)
        ghc-options: -Wincomplete-uni-patterns -Wincomplete-record-updates

benchmark language-ats-bench
    type: exitcode-stdio-1.0
    main-is: Bench.hs
    hs-source-dirs: bench
    default-language: Haskell2010
    ghc-options: -Wall -O2
    build-depends:
        base -any,
        language-ats -any,
        criterion -any

    if flag(development)
        ghc-options: -Werror

    if impl(ghc >=8.0)
        ghc-options: -Wincomplete-uni-patterns -Wincomplete-record-updates