cabal-version: >=1.10 name: these version: 0.8.1 synopsis: An either-or-both data type & a generalized 'zip with padding' typeclass homepage: https://github.com/isomorphism/these license: BSD3 license-file: LICENSE author: C. McCann maintainer: oleg.grenrus@iki.fi category: Data,Control build-type: Simple extra-source-files: README.md CHANGELOG.md description: This package provides a data type @These a b@ which can hold a value of either type or values of each type. This is usually thought of as an "inclusive or" type (contrasting @Either a b@ as "exclusive or") or as an "outer join" type (contrasting @(a, b)@ as "inner join"). . The major use case of this is provided by the @Align@ class, representing a generalized notion of "zipping with padding" that combines structures without truncating to the size of the smaller input. . Also included is @ChronicleT@, a monad transformer based on the Monad instance for @These a@, along with the usual monad transformer bells and whistles. . For a dependency light version, check package. tested-with: ghc ==7.4.2 || ==7.6.3 || ==7.8.4 || ==7.10.3 || ==8.0.2 || ==8.2.2 || ==8.4.4 || ==8.6.4 source-repository head type: git location: https://github.com/isomorphism/these.git library default-language: Haskell2010 ghc-options: -Wall exposed-modules: Control.Monad.Chronicle Control.Monad.Chronicle.Class Control.Monad.Trans.Chronicle Data.Align Data.Align.Indexed Data.Align.Key Data.Functor.These Data.These Data.These.Lens Data.These.Combinators -- ghc boot libs build-depends: assoc >=1 && <1.1 , base >=4.5.1.0 && <4.13 , binary >=0.5.1.0 && <0.10 , containers >=0.4.2.1 && <0.7 , deepseq >=1.3.0.0 && <1.5 , mtl >=2.1.3 && <2.3 , transformers >=0.3.0.0 && <0.6 -- other dependencies build-depends: aeson >=1.4.2.0 && <1.5 , base-compat >=0.10.5 && <0.11 , bifunctors >=5.5.3 && <5.6 , data-default-class >=0.1.2.0 && <0.2 , hashable >=1.2.7.0 && <1.4 , keys >=3.12.1 && <3.13 , lens >=4.17 && <4.18 , tagged >=0.8.6 && <0.9 , QuickCheck >=2.12.6.1 && <2.14 , semigroupoids >=5.3.1 && <5.4 , transformers-compat >=0.6.2 && <0.7 , unordered-containers >=0.2.8.0 && <0.3 , vector >=0.12.0.2 && <0.13 , vector-instances >=3.4 && <3.5 if impl(ghc <7.5) build-depends: ghc-prim if !impl(ghc >=8.0) build-depends: semigroups >=0.18.5 && <0.20 -- Ensure Data.Functor.Classes is always available if impl(ghc >=7.10) build-depends: transformers >=0.4.2.0 test-suite test default-language: Haskell2010 type: exitcode-stdio-1.0 main-is: Tests.hs hs-source-dirs: test ghc-options: -Wall -- library constrained dependencies build-depends: aeson , base , base-compat , bifunctors , binary , containers , hashable , lens , QuickCheck , these , transformers , unordered-containers , vector if !impl(ghc >=8.0) build-depends: semigroups -- additional dependencies build-depends: quickcheck-instances >=0.3.15 && <0.4 , tasty >=1.2 && <1.3 , tasty-quickcheck >=0.10 && <0.11