name:            attoparsec
version:         0.13.0.1
license:         BSD3
license-file:    LICENSE
category:        Text, Parsing
author:          Bryan O'Sullivan <bos@serpentine.com>
maintainer:      Bryan O'Sullivan <bos@serpentine.com>
stability:       experimental
tested-with:     GHC == 7.0, GHC == 7.2, GHC == 7.4, GHC == 7.6, GHC == 7.8, GHC == 7.10
synopsis:        Fast combinator parsing for bytestrings and text
cabal-version:   >= 1.8
homepage:        https://github.com/bos/attoparsec
bug-reports:     https://github.com/bos/attoparsec/issues
build-type:      Simple
description:
    A fast parser combinator library, aimed particularly at dealing
    efficiently with network protocols and complicated text/binary
    file formats.
extra-source-files:
    README.markdown
    benchmarks/*.cabal
    benchmarks/*.hs
    benchmarks/*.txt
    benchmarks/Makefile
    benchmarks/med.txt.bz2
    changelog.md
    examples/*.c
    examples/*.hs
    examples/Makefile
    tests/*.hs
    tests/QC/*.hs
    tests/QC/IPv6/*.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,
                 scientific >= 0.3.1 && < 0.4,
                 transformers,
                 text >= 1.1.1.3
  if impl(ghc < 7.4)
    build-depends:
      bytestring < 0.10.4.0

  exposed-modules: Data.Attoparsec
                   Data.Attoparsec.ByteString
                   Data.Attoparsec.ByteString.Char8
                   Data.Attoparsec.ByteString.Lazy
                   Data.Attoparsec.Char8
                   Data.Attoparsec.Combinator
                   Data.Attoparsec.Internal
                   Data.Attoparsec.Internal.Types
                   Data.Attoparsec.Lazy
                   Data.Attoparsec.Number
                   Data.Attoparsec.Text
                   Data.Attoparsec.Text.Lazy
                   Data.Attoparsec.Types
                   Data.Attoparsec.Zepto
  other-modules:   Data.Attoparsec.ByteString.Buffer
                   Data.Attoparsec.ByteString.FastSet
                   Data.Attoparsec.ByteString.Internal
                   Data.Attoparsec.Internal.Fhthagn
                   Data.Attoparsec.Text.Buffer
                   Data.Attoparsec.Text.FastSet
                   Data.Attoparsec.Text.Internal
  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.Buffer
                  QC.ByteString
                  QC.Combinator
                  QC.Common
                  QC.IPv6.Internal
                  QC.IPv6.Types
                  QC.Rechunked
                  QC.Simple
                  QC.Text

  ghc-options:
    -Wall -threaded -rtsopts

  if flag(developer)
    ghc-options: -Werror

  build-depends:
    array,
    base >= 4 && < 5,
    bytestring,
    containers,
    deepseq >= 1.1,
    QuickCheck >= 2.7,
    quickcheck-unicode,
    scientific,
    test-framework >= 0.8.0.2,
    test-framework-quickcheck2 >= 0.3.0.3,
    text,
    transformers,
    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:
    Common
    HeadersByteString
    HeadersByteString.Atto
    HeadersText
    Links
    Numbers
    Sets
    TextFastSet
    Warp
  ghc-options: -O2 -Wall

  if flag(developer)
    ghc-options: -Werror

  build-depends:
    array,
    base == 4.*,
    bytestring >= 0.10.4.0,
    case-insensitive,
    containers,
    criterion >= 1.0,
    deepseq >= 1.1,
    directory,
    filepath,
    ghc-prim,
    http-types,
    parsec >= 3.1.2,
    scientific,
    text >= 1.1.1.0,
    unordered-containers,
    vector

source-repository head
  type:     git
  location: https://github.com/bos/attoparsec

source-repository head
  type:     mercurial
  location: https://bitbucket.org/bos/attoparsec
