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.

Versions [faq] 0.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.*) [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 Sat Sep 7 14:22:14 UTC 2019
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 Mon Sep 2 08:20:12 UTC 2019
Distributions NixOS:0.1
Downloads 42 total (42 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2019-09-02 [all 1 reports]

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

For package maintainers and hackage trustees