packages feed

gambler-0.4.0.0: gambler.cabal

cabal-version: 3.0

name: gambler
version: 0.4.0.0

category: Streaming
synopsis: Composable, streaming, and efficient left folds
description: This library provides strict left folds that stream in constant
    memory, and you can combine folds using @Applicative@ style to derive new
    folds that still traverse the list only once.

author: Gabriella Gonzalez
maintainer: Chris Martin, Julie Moronuki

license: BSD-3-Clause
license-file: license.txt
copyright: 2013-2016 Gabriella Gonzalez, 2023 Mission Valley Software LLC

bug-reports: https://github.com/typeclasses/gambler/issues

extra-source-files: *.md

common base
    default-language: GHC2021
    ghc-options:
        -Wall
    default-extensions:
        ApplicativeDo
        NoImplicitPrelude
    build-depends:
      , base ^>= 4.16 || ^>= 4.17

library
    import: base
    hs-source-dirs: source
    exposed-modules:
        Fold
        Fold.Types

        Fold.Pure
        Fold.Pure.Conversion
        Fold.Pure.Examples
        Fold.Pure.Run
        Fold.Pure.Type
        Fold.Pure.Utilities

        Fold.Effectful
        Fold.Effectful.Conversion
        Fold.Effectful.Examples
        Fold.Effectful.Run
        Fold.Effectful.Type
        Fold.Effectful.Utilities

        Fold.Nonempty
        Fold.Nonempty.Conversion
        Fold.Nonempty.Examples
        Fold.Nonempty.Run
        Fold.Nonempty.Type
        Fold.Nonempty.Utilities

        Fold.Shortcut
        Fold.Shortcut.Run
        Fold.Shortcut.Type
        Fold.Shortcut.Examples
        Fold.Shortcut.Conversion
        Fold.Shortcut.Utilities

        Fold.ShortcutNonempty
        Fold.ShortcutNonempty.Run
        Fold.ShortcutNonempty.Type
        Fold.ShortcutNonempty.Examples
        Fold.ShortcutNonempty.Conversion
        Fold.ShortcutNonempty.Utilities

    other-modules:
        Strict

        Fold.Pure.Examples.Interesting
        Fold.Pure.Examples.Boring

        Fold.Effectful.Examples.Interesting
        Fold.Effectful.Examples.Boring

        Fold.Nonempty.Examples.Interesting
        Fold.Nonempty.Examples.Boring

        Fold.Shortcut.Examples.Interesting
        Fold.Shortcut.Examples.Boring

        Fold.ShortcutNonempty.Examples.Interesting
        Fold.ShortcutNonempty.Examples.Boring

test-suite test-gambler
    import: base
    hs-source-dirs: test
    type: exitcode-stdio-1.0
    main-is: Main.hs
    other-modules:
        Spec.Pure
        Spec.Nonempty
        Spec.Effectful
        Spec.Shortcut
        Spec.ShortcutNonempty
        Positive
    ghc-options:
        -threaded
    default-extensions:
        BlockArguments
        OverloadedLists
    build-depends:
      , gambler
      , hspec ^>= 2.8.5 || ^>= 2.9 || ^>= 2.10