cabal-version: >=1.10 name: these version: 1 synopsis: An either-or-both data type. homepage: https://github.com/isomorphism/these license: BSD3 license-file: LICENSE author: C. McCann, Oleg Grenrus maintainer: Oleg Grenrus category: Data, These build-type: Simple extra-source-files: 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"). . @ data These a b = This a | That b | These a b @ . Since version 1, this package was split into parts: . * For @Align@ and @Zip@ type-classes. . * For @SemialignWithIndex@ class, providing @ialignWith@ and @izipWith@. . * For lens combinators. . * For transformers variant of @These@. 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.5 || ==8.8.1 source-repository head type: git location: https://github.com/isomorphism/these.git flag aeson description: Build with aeson dependency manual: True default: True flag assoc description: Build with assoc dependency manual: True default: True flag semigroupoids description: Build with semigroupoids dependency manual: True default: True flag QuickCheck description: Build with QuickCheck dependency manual: True default: True library default-language: Haskell2010 ghc-options: -Wall if impl(ghc >=8.0) ghc-options: -Wno-trustworthy-safe hs-source-dirs: src exposed-modules: Data.Functor.These Data.These Data.These.Combinators -- ghc boot libs build-depends: base >=4.5.1.0 && <4.13 , binary >=0.5.1.0 && <0.10 , deepseq >=1.3.0.0 && <1.5 -- other dependencies build-depends: base-compat >=0.10.5 && <0.11 , hashable >=1.2.7.0 && <1.4 if impl(ghc <7.5) build-depends: ghc-prim if !impl(ghc >=8.2) build-depends: bifunctors >=5.5.4 && <5.6 if !impl(ghc >=8.0) build-depends: semigroups >=0.18.5 && <0.20 , transformers >=0.3.0.0 && <0.6 , transformers-compat >=0.6.5 && <0.7 -- Ensure Data.Functor.Classes is always available if impl(ghc >=7.10) build-depends: transformers >=0.4.2.0 if flag(aeson) build-depends: aeson >=1.4.2.0 && <1.5 , unordered-containers >=0.2.8.0 && <0.3 if flag(assoc) build-depends: assoc >=1 && <1.1 if flag(semigroupoids) build-depends: semigroupoids >=5.3.2 && <5.4 if flag(quickcheck) build-depends: QuickCheck >=2.12.6.1 && <2.14