name:		parsec
version:	3.1.9
cabal-version: >= 1.8
license:	BSD3
license-file:	LICENSE
author:		Daan Leijen <daan@microsoft.com>, Paolo Martini <paolo@nemail.it>
maintainer:	Antoine Latter <aslatter@gmail.com>
homepage:	https://github.com/aslatter/parsec
bug-reports:    https://github.com/aslatter/parsec/issues
category:	Parsing
synopsis:	Monadic parser combinators
build-type:     Simple
description:
	Parsec is designed from scratch as an industrial-strength parser
	library.  It is simple, safe, well documented (on the package
	homepage), has extensive libraries, good error messages,
	and is fast.  It is defined as a monad transformer that can be
	stacked on arbitrary monads, and it is also parametric in the
	input stream type.
extra-source-files: CHANGES

source-repository head
    type: git
    location: https://github.com/aslatter/parsec

flag base4
    Description: Use base-4.*
    Default:    True

library
    exposed-modules:
        Text.Parsec,
        Text.Parsec.String,
        Text.Parsec.ByteString,
        Text.Parsec.ByteString.Lazy,
        Text.Parsec.Text,
        Text.Parsec.Text.Lazy,
        Text.Parsec.Pos,
        Text.Parsec.Error,
        Text.Parsec.Prim,
        Text.Parsec.Char,
        Text.Parsec.Combinator,
        Text.Parsec.Token,
        Text.Parsec.Expr,
        Text.Parsec.Language,
        Text.Parsec.Perm,
        Text.ParserCombinators.Parsec,
        Text.ParserCombinators.Parsec.Char,
        Text.ParserCombinators.Parsec.Combinator,
        Text.ParserCombinators.Parsec.Error,
        Text.ParserCombinators.Parsec.Expr,
        Text.ParserCombinators.Parsec.Language,
        Text.ParserCombinators.Parsec.Perm,
        Text.ParserCombinators.Parsec.Pos,
        Text.ParserCombinators.Parsec.Prim,
        Text.ParserCombinators.Parsec.Token
    if flag(base4)
        build-depends: base >= 4 && < 5
    else
        build-depends: base >= 3.0.3 && < 4
        cpp-options: -DBASE3

    build-depends: mtl, bytestring, text >= 0.2 && < 1.3
    extensions:	ExistentialQuantification, PolymorphicComponents, MultiParamTypeClasses, FlexibleInstances, FlexibleContexts, DeriveDataTypeable, CPP
    ghc-options:	-O2

Test-Suite tests
    type:        exitcode-stdio-1.0
    hs-source-dirs:  test
    main-is:     Main.hs
    other-modules:
                 Bugs,
                 Bugs.Bug2,
                 Bugs.Bug6,
                 Bugs.Bug9,
                 Util
    build-depends:
       base,
       parsec,
       HUnit == 1.2.*,
       test-framework >= 0.6 && < 0.9,
       test-framework-hunit >= 0.2 && < 0.4
    ghc-options: -Wall
