packages feed

infinite-list-0.1: infinite-list.cabal

cabal-version:   1.18
name:            infinite-list
version:         0.1
license:         BSD3
license-file:    LICENSE
maintainer:      andrew.lelechenko@gmail.com
author:          Bodigrim
tested-with:
    ghc ==8.0.2 ghc ==8.2.2 ghc ==8.4.4 ghc ==8.6.5 ghc ==8.8.4
    ghc ==8.10.7 ghc ==9.0.2 ghc ==9.2.5 ghc ==9.4.3

homepage:        https://github.com/Bodigrim/infinite-list
synopsis:        Infinite lists
description:
    Modern lightweight library for infinite lists with fusion:
    .
    * API similar to "Data.List".
    * No non-boot dependencies.
    * Top performance, driven by fusion.
    * Avoid dangerous instances like `Foldable`.
    * Use `NonEmpty` where applicable.
    * Use `Word` for indices.
    * Be lazy, but not too lazy.
    .
    @
    {\-# LANGUAGE PostfixOperators #-\}
    import Data.List.Infinite (Infinite(..), (...), (....))
    import qualified Data.List.Infinite as Inf
    @

category:        Data
build-type:      Simple
extra-doc-files:
    CHANGELOG.md
    README.md

source-repository head
    type:     git
    location: https://github.com/Bodigrim/infinite-list

library
    exposed-modules:  Data.List.Infinite
    hs-source-dirs:   src
    other-modules:
        Data.List.Infinite.Zip
        Data.List.Infinite.Internal

    default-language: Haskell2010
    ghc-options:      -Wall
    build-depends:    base >=4.9 && <5

    if impl(ghc <8.2)
        build-depends: ghc-prim

test-suite infinite-properties
    type:             exitcode-stdio-1.0
    main-is:          Properties.hs
    hs-source-dirs:   test
    default-language: Haskell2010
    ghc-options:      -Wall
    build-depends:
        base,
        infinite-list,
        QuickCheck,
        tasty,
        tasty-quickcheck

test-suite infinite-fusion
    type:             exitcode-stdio-1.0
    main-is:          Fusion.hs
    hs-source-dirs:   test
    default-language: Haskell2010
    ghc-options:      -Wall
    build-depends:
        base,
        infinite-list,
        tasty,
        tasty-inspection-testing,
        tasty-expected-failure

    if impl(ghc <9.2)
        buildable: False

benchmark infinite-bench
    type:             exitcode-stdio-1.0
    main-is:          Bench.hs
    hs-source-dirs:   bench
    default-language: Haskell2010
    ghc-options:      -Wall
    build-depends:
        base,
        infinite-list,
        tasty-bench