polytropos-lens-0.1.0.2: polytropos-lens.cabal
cabal-version: 3.0
name: polytropos-lens
version: 0.1.0.2
synopsis: Comprehensive lens-suite integration for polytropos open records and variants
description:
Comprehensive optics integration between <https://hackage.haskell.org/package/polytropos polytropos> open records and variants
and Edward Kmett's <https://hackage.haskell.org/package/lens lens> ecosystem.
Bridges the unified flat runtime representation 'Polytropos.Core.Rep' to standard "Control.Lens" typeclasses:
positional lenses ('Control.Lens.Tuple.Field1' through 'Control.Lens.Tuple.Field9'), label-based lenses ('Polytropos.Lens.fieldLens'),
container indexing ('Control.Lens.At.Ixed' and 'Control.Lens.At.At' keyed by field name), single-pass homogeneous
traversals ('Control.Lens.Each.Each'), and first-class profunctor prisms ('Polytropos.Lens.prismVariant') for open
variant constructors with O(1) tag dispatch.
Keeps the core @polytropos@ packages lightweight and free from transitive dependencies.
Start at the front door module "Polytropos.Lens" for complete documentation,
usage guidelines, and worked examples.
license: EUPL-1.2 OR Apache-2.0
license-file: LICENSE
author: Nadia Yvette Chambers
maintainer: nadia.yvette.chambers@ik.me
category: Optics, Data
homepage: https://github.com/NadiaYvette/polytropos
bug-reports: https://github.com/NadiaYvette/polytropos/issues
extra-doc-files:
README.md
, CHANGELOG.md
build-type: Simple
source-repository head
type: git
location: https://github.com/NadiaYvette/polytropos
subdir: packages/polytropos-lens
library
default-language: GHC2021
hs-source-dirs: src
exposed-modules: Polytropos.Lens
ghc-options: -Wall
build-depends:
base >= 4.14 && < 5,
lens >= 5.2 && < 5.4,
profunctors >= 5.6 && < 5.7,
polytropos-core >= 0.1 && < 0.2,
polytropos-plugin >= 0.1 && < 0.2
test-suite polytropos-lens-test
type: exitcode-stdio-1.0
default-language: GHC2021
hs-source-dirs: test
main-is: Main.hs
ghc-options: -Wall -fplugin=Polytropos.Plugin
build-depends:
base,
lens,
polytropos-core,
polytropos-lens,
polytropos-plugin,
profunctors,
tasty,
tasty-hunit