Portability | Rank2Types |
---|---|
Stability | provisional |
Maintainer | Edward Kmett <ekmett@gmail.com> |
Safe Haskell | Safe-Infered |
Control.Lens.Internal
Contents
Description
These are some of the explicit Functor instances that leak into the type signatures of Control.Lens. You shouldn't need to import this module directly, unless you are coming up with a whole new kind of "Family" and need to add instances.
- data IndexedStore c d a = IndexedStore (d -> a) c
- newtype Focusing m c a = Focusing {
- unfocusing :: m (c, a)
- newtype Traversed f = Traversed {
- getTraversed :: f ()
- newtype Sequenced m = Sequenced {
- getSequenced :: m ()
- newtype AppliedState f a = AppliedState {
- runAppliedState :: Int -> (f a, Int)
- data Min a
- getMin :: Min a -> Maybe a
- data Max a
- getMax :: Max a -> Maybe a
- data ElementOf f a = ElementOf {
- getElementOf :: Int -> ElementOfResult f a
- data ElementOfResult f a
Implementation details
data IndexedStore c d a Source
The indexed store can be used to characterize a LensFamily
and is used by clone
Constructors
IndexedStore (d -> a) c |
Instances
Functor (IndexedStore c d) |
Used by Focus
Constructors
Focusing | |
Fields
|
Used internally by traverseOf_
, mapM_
and the like.
Constructors
Traversed | |
Fields
|
Instances
Applicative f => Monoid (Traversed f) |
Used internally by mapM_
and the like.
Constructors
Sequenced | |
Fields
|
newtype AppliedState f a Source
Applicative composition of State Int
with a Functor
, used
by elementOf
, elementsOf
, traverseElement
, traverseElementsOf
Constructors
AppliedState | |
Fields
|
Instances
Functor f => Functor (AppliedState f) | |
Applicative f => Applicative (AppliedState f) |
Used to find the nth element of a Traversal
.
Constructors
ElementOf | |
Fields
|