packages feed

indentation-0.2.0.3: indentation.cabal

name:                indentation
version:             0.2.0.3
synopsis:            Indentation sensitive parsing combinators for Parsec and Trifecta
description:         Indentation sensitive parsing combinators for Parsec and Trifecta.
                     .                     
                     See
                     .
                         __Michael D. Adams and Ömer S. Ağacan__.
                         Indentation-sensitive parsing for Parsec.
                         In /Proceedings of the 2014 ACM SIGPLAN Symposium on Haskell/,
                         Haskell ’14, pages 121–132.
                         ACM, New York, NY, USA, September 2014. ISBN 978-1-4503-3041-1.
                         <http://dx.doi.org/10.1145/2633357.2633369 doi:10.1145/2633357.2633369>.

license:             BSD3
license-file:        LICENSE
author:              Michael D. Adams <http://michaeldadams.org/>
maintainer:          Ömer Sinan Ağacan <omeragacan@gmail.com>
                     Aleksey Kliger <aleksey@lambdageek.org>
category:            Parsing
build-type:          Simple
cabal-version:       >=1.10
extra-source-files:  CHANGELOG.md
                     Text/Parsec/Indentation/Examples/*.hs

homepage:            https://bitbucket.org/mdmkolbe/indentation
bug-reports:         https://bitbucket.org/mdmkolbe/indentation/issues

source-repository head
  type:                git
  location:            https://bitbucket.org/mdmkolbe/indentation.git

library
  exposed-modules:     Text.Parser.Indentation.Implementation
  build-depends:       base >=4.6 && <4.8,
                       mtl >=2.1

  if flag(Parsec)
    build-depends:     parsec >=3.1.5
    exposed-modules:   Text.Parsec.Indentation
                     , Text.Parsec.Indentation.Char
                     , Text.Parsec.Indentation.Token

  if flag(Trifecta)
    build-depends:     trifecta >=1.4 && <1.6,
                       parsers >=0.10 && <0.13
    exposed-modules:   Text.Trifecta.Indentation

  default-language:    Haskell2010

  ghc-options:         -Wall

test-suite test-indentation
  default-language:
    Haskell2010
  type:
    exitcode-stdio-1.0
  hs-source-dirs:
    tests
  main-is:          all-tests.hs
  if flag(Parsec) {
    cpp-options:    -DENABLE_PARSEC_TESTS
    build-depends:
      parsec
    other-modules:
      ParensParsec
  }
  if flag(Parsec) {
    cpp-options:    -DENABLE_TRIFECTA_TESTS
    build-depends:
      trifecta
    other-modules:
      ParensTrifecta
  }
  build-depends:
      base >= 4 && < 5
    , tasty >= 0.10
    , tasty-hunit >= 0.9
    , indentation

flag Parsec
  description:       Include indentation operators for Parsec
  manual:            True

flag Trifecta
  description:       Include indentation operators for Trifecta
  manual:            True