packages feed

static-text-0.2: static-text.cabal

name: static-text
version: 0.2
cabal-version: >=1.10
build-type: Simple
license: BSD3
license-file: LICENSE
maintainer: dima@dzhus.org
homepage: https://github.com/dzhus/static-text#readme
bug-reports: https://github.com/dzhus/static-text/issues
synopsis: Lists, Texts, ByteStrings and Vectors of statically known length
description:
    static-text provides type-level safety for basic operations on string-like types (finite lists of elements), such as Data.Text, String (and all lists), Data.ByteString and Data.Vector. Use it when you need static guarantee on lengths of strings produced in your code.
category: Data, Text, Type System
author: Dmitry Dzhus
extra-source-files:
    CHANGELOG.md

source-repository head
    type: git
    location: https://github.com/dzhus/static-text

flag bytestring
    description:
        Build interface for ByteString

flag text
    description:
        Build interface for Text

flag vector
    description:
        Build interface for Vector

library
    
    if flag(bytestring)
        build-depends:
            bytestring <0.11
        cpp-options: -DWITH_BS
    
    if flag(text)
        build-depends:
            text <1.3
        cpp-options: -DWITH_TEXT
    
    if flag(vector)
        build-depends:
            vector <0.13
        cpp-options: -DWITH_VECTOR
    exposed-modules:
        Data.StaticText
        Data.StaticText.Class
        Data.StaticText.TH
    build-depends:
        base <5,
        template-haskell <2.13
    default-language: Haskell2010
    hs-source-dirs: src
    other-modules:
        Paths_static_text
    ghc-options: -Wall

test-suite  static-text-doctests
    type: exitcode-stdio-1.0
    main-is: doctest-driver.hs
    build-depends:
        base <5,
        doctest <0.14,
        doctest-discover <0.2,
        template-haskell <2.13
    default-language: Haskell2010
    hs-source-dirs: tests
    other-modules:
        Main
        Paths_static_text
    ghc-options: -Wall -threaded
test-suite  static-text-example
    type: exitcode-stdio-1.0
    main-is: Main.hs
    build-depends:
        base <5,
        bytestring <0.11,
        static-text -any,
        tasty <0.13,
        tasty-hunit <0.11,
        template-haskell <2.13
    default-language: Haskell2010
    hs-source-dirs: tests
    other-modules:
        Paths_static_text
    ghc-options: -Wall