BSD-3-Clause licensed by Csongor Kiss
Maintained by [email protected]
This version can be pinned in stack with:generic-optics-2.3.0.0@sha256:7642f8ea940910b491247f0f9e805cd6a31fe35f3bcc2db75bfb2874b93cc5b7,3758

Module documentation for 2.3.0.0

  • Data
    • Data.Generics
      • Data.Generics.Product
        • Data.Generics.Product.Any
        • Data.Generics.Product.Fields
        • Data.Generics.Product.HList
        • Data.Generics.Product.Param
        • Data.Generics.Product.Positions
        • Data.Generics.Product.Subtype
        • Data.Generics.Product.Typed
        • Data.Generics.Product.Types
      • Data.Generics.Sum
        • Data.Generics.Sum.Any
        • Data.Generics.Sum.Constructors
        • Data.Generics.Sum.Subtype
        • Data.Generics.Sum.Typed
      • Data.Generics.Wrapped
Used by 1 package in nightly-2026-01-18(full list with versions):

This library uses GHC.Generics to derive efficient optics (traversals, lenses and prisms) for algebraic data types in a type-directed way, with a focus on good type inference and error messages when possible.

The library exposes an optics interface. For a van Laarhoven interface, see generic-lens.

Changes

generic-optics-2.3.0.0 (2025-08-27)

Tested with GHC 8.4 - 9.14 alpha1.

Breaking API changes:

  • AsType now includes a reflexive case for consistency with HasType: every type can be treated ‘as’ itself.

generic-optics-2.2.1.0 (2022-01-22)

  • GHC 9.2 compatibility

generic-optics-2.2.0.0 (2021-07-13)

  • GHC 9.0 compatibility

generic-optics-2.1.0.0 (2021-01-25)

  • Bump to generic-lens-core-2.1.0.0

generic-optics-2.0.0.0 (2020-02-11)

  • Initial release