packages feed

aihc-parser-1.0.0.2: aihc-parser.cabal

cabal-version: 3.8
name: aihc-parser
version: 1.0.0.2
build-type: Simple
license: Unlicense
license-file: LICENSE
extra-doc-files: CHANGELOG.md
extra-source-files:
  test/Test/Fixtures/**/*.hs
  test/Test/Fixtures/**/*.yaml

author: David Himmelstrup
maintainer: lemmih@gmail.com
category: Development
synopsis: Haskell parser
description:
  A from-scratch Haskell parser with lexer, syntax tree, and pretty-printer.
  The package is validated with golden tests and oracle-backed differential
  tests against GHC.

homepage: https://github.com/ai-haskell-compiler/aihc/tree/main/components/aihc-parser
bug-reports: https://github.com/ai-haskell-compiler/aihc/issues

source-repository head
  type: git
  location: https://github.com/ai-haskell-compiler/aihc.git
  subdir: components/aihc-parser

library
  exposed-modules:
    Aihc.Parser
    Aihc.Parser.Parens
    Aihc.Parser.Pretty
    Aihc.Parser.Shorthand
    Aihc.Parser.Syntax
    Aihc.Parser.Token

  other-modules:
    Aihc.Parser.Internal.CheckPattern
    Aihc.Parser.Internal.Cmd
    Aihc.Parser.Internal.Common
    Aihc.Parser.Internal.Decl
    Aihc.Parser.Internal.Errors
    Aihc.Parser.Internal.Expr
    Aihc.Parser.Internal.FromTokens
    Aihc.Parser.Internal.Import
    Aihc.Parser.Internal.Module
    Aihc.Parser.Internal.Pattern
    Aihc.Parser.Internal.Type
    Aihc.Parser.Lex
    Aihc.Parser.Lex.Header
    Aihc.Parser.Lex.Layout
    Aihc.Parser.Lex.Numbers
    Aihc.Parser.Lex.Pragmas
    Aihc.Parser.Lex.Quoted
    Aihc.Parser.Lex.Trivia
    Aihc.Parser.Lex.Types
    Aihc.Parser.Types

  hs-source-dirs: src
  build-depends:
    base >=4.16 && <5,
    bytestring >=0.10.8 && <0.13,
    containers >=0.5 && <0.8,
    deepseq >=1.4 && <1.6,
    megaparsec >=9.0 && <10,
    prettyprinter >=1.7 && <1.8,
    text >=1.2 && <2.2,

  ghc-options: -Wall
  default-language: GHC2021

test-suite spec
  type: exitcode-stdio-1.0
  hs-source-dirs:
    test
    common
    src

  main-is: Spec.hs
  other-modules:
    Aihc.Parser
    Aihc.Parser.Internal.CheckPattern
    Aihc.Parser.Internal.Cmd
    Aihc.Parser.Internal.Common
    Aihc.Parser.Internal.Decl
    Aihc.Parser.Internal.Errors
    Aihc.Parser.Internal.Expr
    Aihc.Parser.Internal.FromTokens
    Aihc.Parser.Internal.Import
    Aihc.Parser.Internal.Module
    Aihc.Parser.Internal.Pattern
    Aihc.Parser.Internal.Type
    Aihc.Parser.Lex
    Aihc.Parser.Lex.Header
    Aihc.Parser.Lex.Layout
    Aihc.Parser.Lex.Numbers
    Aihc.Parser.Lex.Pragmas
    Aihc.Parser.Lex.Quoted
    Aihc.Parser.Lex.Trivia
    Aihc.Parser.Lex.Types
    Aihc.Parser.Parens
    Aihc.Parser.Pretty
    Aihc.Parser.Shorthand
    Aihc.Parser.Syntax
    Aihc.Parser.Token
    Aihc.Parser.Types
    CppSupport
    ExtensionSupport
    GhcOracle
    HackageSupport
    HackageTester.CLI
    HackageTester.Model
    HseExtensions
    LexerGolden
    ParserEquivalent
    ParserErrorGolden
    ParserGolden
    ParserValidation
    ShrinkUtils
    StackageProgress.Summary
    Test.ErrorMessages.Suite
    Test.ExtensionMapping.Suite
    Test.HackageTester.Suite
    Test.Lexer.Suite
    Test.Oracle.Suite
    Test.Parser.Suite
    Test.Performance.Suite
    Test.Properties.Arb.Decl
    Test.Properties.Arb.Expr
    Test.Properties.Arb.Identifiers
    Test.Properties.Arb.Module
    Test.Properties.Arb.Pattern
    Test.Properties.Arb.Type
    Test.Properties.Arb.Utils
    Test.Properties.Coverage
    Test.Properties.DeclRoundTrip
    Test.Properties.ExprRoundTrip
    Test.Properties.MinimalParentheses
    Test.Properties.ModuleRoundTrip
    Test.Properties.NoExceptions
    Test.Properties.ParensIdempotency
    Test.Properties.PatternRoundTrip
    Test.Properties.ShorthandSubset
    Test.Properties.TypeRoundTrip
    Test.StackageProgress.Summary

  build-depends:
    Cabal-syntax >=3.14 && <3.17,
    Diff >=1.0 && <1.1,
    QuickCheck >=2.14 && <2.19,
    aeson >=2.0 && <2.3,
    aihc-cpp >=1.0 && <1.1,
    aihc-hackage >=0.1 && <0.2,
    base >=4.16 && <5,
    bytestring >=0.10.8 && <0.13,
    containers >=0.5 && <0.8,
    deepseq >=1.4 && <1.6,
    directory >=1.2.3 && <1.5,
    filepath >=1.3.0.1 && <1.6,
    ghc-lib-parser >=9.14.1 && <9.15,
    haskell-src-exts >=1.23 && <1.24,
    megaparsec >=9.0 && <10,
    optparse-applicative >=0.16 && <0.19,
    prettyprinter >=1.7 && <1.8,
    process >=1.6 && <1.7,
    tasty >=1.5 && <1.6,
    tasty-hunit >=0.10 && <0.11,
    tasty-quickcheck >=0.11.1 && <0.12,
    template-haskell >=2.18 && <2.24,
    text >=1.2 && <2.2,
    yaml >=0.11 && <0.12,

  ghc-options:
    -Wall
    -threaded
    -rtsopts
    -with-rtsopts=-N

  default-language: GHC2021