optics: Optics as an abstract interface

[ bsd3, data, lenses, library, optics ] [ Propose Tags ]

This package makes it possible to define and use Lenses, Traversals, Prisms and other optics, using an abstract interface. See the main module Optics for the documentation.

This is the "batteries-included" variant with many dependencies; see the optics-core package and other optics-* dependencies if you need a more limited dependency footprint.

Modules

[Index] [Quick Jump]

  • Data
    • ByteString
      • Lazy
        • Data.ByteString.Lazy.Optics
      • Data.ByteString.Optics
      • Strict
        • Data.ByteString.Strict.Optics
    • Either
      • Data.Either.Optics
    • HashMap
      • Data.HashMap.Optics
    • HashSet
      • Data.HashSet.Optics
    • IntMap
      • Data.IntMap.Optics
    • IntSet
      • Data.IntSet.Optics
    • List
      • Data.List.Optics
    • Map
      • Data.Map.Optics
    • Maybe
      • Data.Maybe.Optics
    • Sequence
      • Data.Sequence.Optics
    • Set
      • Data.Set.Optics
    • Text
      • Lazy
        • Data.Text.Lazy.Optics
      • Data.Text.Optics
      • Strict
        • Data.Text.Strict.Optics
    • Tree
      • Data.Tree.Optics
    • Tuple
      • Data.Tuple.Optics
    • Typeable
      • Data.Typeable.Optics
    • Vector
      • Generic
        • Data.Vector.Generic.Optics
      • Data.Vector.Optics
  • GHC
    • Generics
      • GHC.Generics.Optics
  • Numeric
    • Numeric.Optics
  • Optics
    • Optics.AffineFold
    • Optics.AffineTraversal
    • Optics.Arrow
    • Optics.At
    • Optics.Coerce
    • Optics.Cons
    • Optics.Each
    • Optics.Empty
    • Optics.Fold
    • Optics.Getter
    • Optics.Indexed
    • Optics.Iso
    • Optics.IxAffineFold
    • Optics.IxAffineTraversal
    • Optics.IxFold
    • Optics.IxGetter
    • Optics.IxLens
    • Optics.IxSetter
    • Optics.IxTraversal
    • Optics.Label
    • Optics.Lens
    • Optics.Operators
    • Optics.Optic
    • Optics.Passthrough
    • Optics.Prism
    • Optics.Re
    • Optics.ReadOnly
    • Optics.ReversedLens
    • Optics.ReversedPrism
    • Optics.Review
    • Optics.Setter
    • Optics.State
      • Optics.State.Operators
    • Optics.TH
    • Optics.Traversal
    • Optics.View
    • Optics.Zoom

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1, 0.2, 0.3, 0.4, 0.4.1, 0.4.2, 0.4.2.1
Dependencies array (>=0.5.1.1 && <0.6), base (>=4.9 && <5), containers (>=0.5.7.1 && <0.7), mtl (>=2.2.2 && <2.3), optics-core (>=0.1 && <0.1.1), optics-extra (>=0.1 && <0.1.1), optics-th (>=0.1 && <0.1.1), transformers (>=0.5 && <0.6) [details]
License BSD-3-Clause
Author Adam Gundry, Andres Löh, Andrzej Rybczak, Oleg Grenrus
Maintainer optics@well-typed.com
Revised Revision 1 made by AdamGundry at 2019-09-07T14:22:14Z
Category Data, Optics, Lenses
Bug tracker https://github.com/well-typed/optics/issues
Source repo head: git clone https://github.com/well-typed/optics.git(optics)
Uploaded by AdamGundry at 2019-09-02T08:20:12Z
Distributions LTSHaskell:0.4.2.1, NixOS:0.4.2.1, Stackage:0.4.2.1
Reverse Dependencies 12 direct, 23 indirect [details]
Downloads 6499 total (85 in the last 30 days)
Rating 2.5 (votes: 5) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2019-09-02 [all 1 reports]