name: invertible version: 0.2.0.5 x-revision: 1 synopsis: bidirectional arrows, bijective functions, and invariant functors description: Representations and operations for bidirectional arrows (total isomorphisms: an arrow paired with its inverse). Classes for invariant functors and monoidal functors. Includes a number of useful bijections and operations, as well as interoperability with related packages. . Most users will want to import one or more of "Data.Invertible" qualified, "Control.Invertible.Monoidal" unqualified, and any additional compatibility modules. license: BSD3 license-file: LICENSE author: Dylan Simon maintainer: dylan@dylex.net copyright: 2016 category: Data, Control, Composition build-type: Simple cabal-version: >=1.10 tested-with: GHC == 7.10.3, GHC == 8.0.1 extra-source-files: README source-repository head type: git location: https://github.com/dylex/invertible flag arrows description: Support the arrows package manual: True default: False flag invariant description: Support the invariant package manual: True default: True flag lens description: Support the lens package manual: True default: True flag partial-isomorphisms description: Support the partial-isomorphisms package manual: True default: True flag Piso description: Support the Piso package manual: True default: False flag semigroupoids description: Support the semigroupoids package manual: True default: True flag TypeCompose description: Support the TypeCompose package manual: True default: False library other-modules: Data.Invertible.Internal exposed-modules: Data.Invertible.Bijection Data.Invertible.TH Data.Invertible.Bits Data.Invertible.Bool Data.Invertible.Coerce Data.Invertible.Complex Data.Invertible.Either Data.Invertible.Enum Data.Invertible.Function Data.Invertible.Functor Data.Invertible.List Data.Invertible.Maybe Data.Invertible.Monad Data.Invertible.Monoid Data.Invertible.Ord Data.Invertible.Tuple Data.Invertible.Prelude Data.Invertible Control.Invertible.BiArrow Control.Invertible.MonadArrow Control.Invertible.Functor Control.Invertible.Monoidal Control.Invertible.Monoidal.Free build-depends: base >= 4.8 && <4.14, transformers, haskell-src-meta >= 0.6 && < 0.9, template-haskell == 2.* default-language: Haskell2010 ghc-options: -Wall if flag(arrows) build-depends: arrows if flag(invariant) exposed-modules: Data.Invertible.Invariant build-depends: invariant if flag(lens) exposed-modules: Data.Invertible.Lens build-depends: lens == 4.* if flag(partial-isomorphisms) exposed-modules: Data.Invertible.PartialIsomorphism if impl(ghc >= 8) build-depends: partial-isomorphisms > 0.2 else build-depends: partial-isomorphisms if flag(Piso) exposed-modules: Data.Invertible.Piso if impl(ghc >= 8) build-depends: Piso > 0.1 else build-depends: Piso if flag(semigroupoids) exposed-modules: Data.Invertible.Semigroupoid build-depends: semigroupoids >= 4 if flag(TypeCompose) exposed-modules: Data.Invertible.TypeCompose build-depends: TypeCompose >= 0.3 test-suite tests type: exitcode-stdio-1.0 hs-source-dirs: test main-is: Main.hs other-modules: FreeMonoidal default-language: Haskell2010 ghc-options: -Wall build-depends: base, transformers, QuickCheck, invertible