optics-core-0.4.1.1: Optics as an abstract interface: core definitions

# optics-core-0.4.1.1: Optics as an abstract interface: core definitions

This package makes it possible to define and use Lenses, Traversals, Prisms and other optics, using an abstract interface.

This variant provides core definitions with a minimal dependency footprint. See the `optics` package (and its dependencies) for documentation and the "batteries-included" variant.

Modules

optics-core-0.4.1.1

- Data
  Submodules
  - Either
    Submodules
    - Data.Either.Optics `Prism`s for the `Either` datatype.
  - IntMap
    Submodules
    - Data.IntMap.Optics
  - IntSet
    Submodules
    - Data.IntSet.Optics Optics for working with `IntSet`s.
  - List
    Submodules
    - Data.List.Optics Traversals for manipulating parts of a list.
  - Map
    Submodules
    - Data.Map.Optics Optics for working with `Map`s.
  - Maybe
    Submodules
    - Data.Maybe.Optics `Prism`s for the `Maybe` datatype.
  - Sequence
    Submodules
    - Data.Sequence.Optics Optics for working with `Seq`s.
  - Set
    Submodules
    - Data.Set.Optics Optics for working with `Set`s.
  - Tree
    Submodules
    - Data.Tree.Optics Optics for working with `Tree`s.
  - Tuple
    Submodules
    - Data.Tuple.Optics `Lens`es for tuple types.
  - Typeable
    Submodules
    - Data.Typeable.Optics Optics for working with `Typeable`.
- GHC
  Submodules
  - Generics
    Submodules
    - GHC.Generics.Optics Optics for types defined in GHC.Generics.
- Numeric
  Submodules
  - Numeric.Optics Optics for working with numeric types.
- Optics
  Submodules
  - Optics.AffineFold A `Fold` that contains at most one element.
  - Optics.AffineTraversal A `Traversal` that applies to at most one element.
  - Optics.Arrow Turn optics into arrow transformers.
  - At
    Submodules
    - Optics.At.Core Optics for `Map` and `Set`-like containers.
  - Optics.Coerce Operators to `coerce` the type parameters of `Optic`.
  - Cons
    Submodules
    - Optics.Cons.Core Optics to access the left or right element of a container.
  - Optics.Core The core optics functionality re-exported.
    Submodules
    - Optics.Core.Extras
  - Each
    Submodules
    - Optics.Each.Core An `IxTraversal` for each element of a (potentially monomorphic) container.
  - Empty
    Submodules
    - Optics.Empty.Core A `Prism` for a type that may be `_Empty`.
  - Optics.Fold Extracts elements from a container.
  - Optics.Generic Data access via the `Generic` type class.
  - Optics.Getter A function considered as an `Optic`.
  - Indexed
    Submodules
    - Optics.Indexed.Core Core definitions for indexed optics.
  - Internal
    Submodules
    - Optics.Internal.Bi
    - Optics.Internal.Fold
    - Optics.Internal.Generic
      Submodules
      - Optics.Internal.Generic.TypeLevel
    - Optics.Internal.Indexed
      Submodules
      - Optics.Internal.Indexed.Classes
    - Optics.Internal.IxFold
    - Optics.Internal.IxSetter
    - Optics.Internal.IxTraversal
    - Optics.Internal.Magic
    - Optics.Internal.Optic
      Submodules
      - Optics.Internal.Optic.Subtyping
      - Optics.Internal.Optic.TypeLevel
      - Optics.Internal.Optic.Types
    - Optics.Internal.Setter
    - Optics.Internal.Traversal
    - Optics.Internal.Utils
  - Optics.Iso Translates between types with the same structure.
  - Optics.IxAffineFold An indexed version of an `AffineFold`.
  - Optics.IxAffineTraversal An indexed version of an `AffineTraversal`.
  - Optics.IxFold An indexed version of a `Fold`.
  - Optics.IxGetter An indexed version of a `Getter`.
  - Optics.IxLens An indexed version of a `Lens`.
  - Optics.IxSetter An indexed version of a `Setter`.
  - Optics.IxTraversal An indexed version of a `Traversal`.
  - Optics.Label Overloaded labels as optics.
  - Optics.Lens A generalised or first-class field.
  - Optics.Mapping Lifting optics using `Functor`s `map`.
  - Optics.Operators Definitions of infix operators for optics.
    Submodules
    - Optics.Operators.Unsafe Definitions of unsafe infix operators for optics.
  - Optics.Optic Common abstraction for all kinds of optics.
  - Optics.Prism A generalised or first-class constructor.
  - Optics.Re The `re` operator allows some optics to be reversed.
  - Optics.ReadOnly Converting read-write optics into their read-only counterparts.
  - Optics.ReversedLens A backwards `Lens`.
  - Optics.ReversedPrism A backwards `Prism`.
  - Optics.Review A backwards `Getter`, i.e. a function.
  - Optics.Setter Applies an update to all contained values.
  - Optics.Traversal Lifts an effectful operation on elements to act on structures.