optics-th

Optics construction using TemplateHaskell

LTS Haskell 16.16:0.2
Stackage Nightly 2020-09-27:0.3.0.2
Latest on Hackage:0.3.0.2

See all snapshots optics-th appears in

BSD-3-Clause licensed by Andrzej Rybczak
Maintained by optics@well-typed.com

Module documentation for 0.3.0.2

This version can be pinned in stack with:optics-th-0.3.0.2@sha256:c616aacdd573aa1d5b039937b69071bc177739f5f81bff9ecf29a88d4896444d,2024

This package is part of the optics package family. It provides machinery to construct optics using TemplateHaskell.

See the template-haskell-optics package for optics to work with template-haskell types.

Changes

optics-th-0.3.0.2 (2020-08-20)

  • Fix tests on GHC 8.10.2

optics-th-0.3.0.1 (2020-08-05)

  • Fix handling of nullary type families
  • Fix declareFieldLabels and declareLenses with DuplicateRecordFields
  • Improve documentation of Optics.TH

optics-th-0.3 (2020-04-15)

  • optics-core-0.3 compatible release
  • GHC-8.10 support
  • Improvements to TH-generated optics:
    • LabelOptic instances make optic kind a type equality for better type inference
    • LabelOptic instances for field optics work properly in the presence of type families
    • Fixed calculation of phantom types in LabelOptic prism instances
    • Better support for generating optics in the presence of kind polymorphism

optics-th-0.2 (2019-10-18)

  • Add noPrefixFieldLabels and noPrefixNamer to Optics.TH

optics-th-0.1 (2019-09-02)

  • Initial release