name:            picoparsec
version:         0.1.2
license:         BSD3
license-file:    LICENSE
category:        Text, Parsing
author:          Mario Blažević <blamario@yahoo.com>
maintainer:      Mario Blažević <blamario@yahoo.com>
stability:       experimental
tested-with:     GHC == 7.6, GHC == 7.8
synopsis:        Fast combinator parsing for bytestrings and text
cabal-version:   >= 1.8
homepage:        https://bitbucket.org/blamario/picoparsec
bug-reports:     https://bitbucket.org/blamario/picoparsec/issues
build-type:      Simple
description:

    A fast and flexible parser combinator library, accepting any input type that is an instance of an appropriate
    monoid subclass.

extra-source-files:
    README.markdown
    benchmarks/*.cabal
    benchmarks/*.hs
    benchmarks/*.txt
    benchmarks/Makefile
    benchmarks/picoparsec-benchmarks.cabal
    benchmarks/med.txt.bz2
    changelog.md
    examples/*.c
    examples/*.hs
    examples/Makefile
    tests/*.hs
    tests/QC/*.hs

Flag developer
  Description: Whether to build the library in development mode
  Default: False
  Manual: True

library
  build-depends: array,
                 base >= 4.2 && < 5,
                 bytestring,
                 containers,
                 deepseq,
                 monoid-subclasses >= 0.4 && < 0.5,
                 scientific >= 0.3.1 && < 0.4,
                 text >= 1.1.1.3

  exposed-modules: Data.Picoparsec
                   Data.Picoparsec.Combinator
                   Data.Picoparsec.Number
                   Data.Picoparsec.State
                   Data.Picoparsec.Types
                   Data.Picoparsec.Zepto
  other-modules:   Data.Picoparsec.Monoid.Internal
                   Data.Picoparsec.Internal
                   Data.Picoparsec.Internal.Types
  ghc-options: -O2 -Wall

  if flag(developer)
    ghc-prof-options: -auto-all
    ghc-options: -Werror

test-suite tests
  type:           exitcode-stdio-1.0
  hs-source-dirs: tests .
  main-is:        QC.hs
  other-modules:  QC.Monoid
                  QC.Combinator
                  QC.Common
                  QC.Rechunked
                  QC.Simple

  ghc-options:
    -Wall -threaded -rtsopts

  if flag(developer)
    ghc-options: -Werror

  build-depends:
    picoparsec,
    array,
    base >= 4 && < 5,
    bytestring, text,
    monoid-subclasses >= 0.4 && < 0.5,
    quickcheck-instances == 0.3.*, tasty >= 0.7, tasty-quickcheck >= 0.7,
    deepseq >= 1.1,
    QuickCheck >= 2.7,
    quickcheck-unicode,
    scientific,
    text,
    vector

benchmark benchmarks
  type: exitcode-stdio-1.0
  hs-source-dirs: benchmarks benchmarks/warp-3.0.1.1 .
  ghc-options: -O2 -Wall -rtsopts
  main-is: Benchmarks.hs
  other-modules:
    Data.Monoid.Instances.ByteString.Char8
    Common
    AttoAeson
    PicoAeson
    HeadersByteString
    HeadersByteString.Atto
    HeadersText
    Links
    Numbers
    Warp
  ghc-options: -O2 -Wall

  if flag(developer)
    ghc-options: -Werror

  build-depends:
    array,
    attoparsec == 0.11.*,
    base == 4.*,
    bytestring >= 0.10.4.0,
    base == 4.*,
    bytestring >= 0.10.4.0,
    case-insensitive,
    criterion >= 1.0,
    deepseq >= 1.1,
    directory,
    filepath,
    hashable,
    monoid-subclasses >= 0.4 && < 0.5,
    ghc-prim,
    http-types,
    parsec >= 3.1.2,
    picoparsec,
    scientific >= 0.2,
    text >= 1.1.1.0,
    unordered-containers,
    vector

source-repository head
  type:     mercurial
  location: https://bitbucket.org/blamario/picoparsec