Safe Haskell | Safe-Infered |
---|
- mergeL :: Functor f => LensFamily f a a' c c' -> LensFamily f b b' c c' -> LensFamily f (Either a b) (Either a' b') c c'
- (***) :: Functor f => ClonerFamily a1 a1' b1 b1' -> ClonerFamily a2 a2' b2 b2' -> LensFamily f (a1, a2) (a1', a2') (b1, b2) (b1', b2')
- fstL :: Functor f => LensFamily f (a, b) (a', b) a a'
- sndL :: Functor f => LensFamily f (a, b) (a, b') b b'
- funL :: (Eq k, Functor f) => k -> Lens f (k -> v) v
- mapL :: (Ord k, Functor f) => k -> Lens f (Map k v) (Maybe v)
- intMapL :: Functor f => Int -> Lens f (IntMap v) (Maybe v)
- setL :: (Ord k, Functor f) => k -> Lens f (Set k) Bool
- intSetL :: Functor f => Int -> Lens f IntSet Bool
- type LensFamily f a a' b b' = (b -> f b') -> a -> f a'
- type Lens f a b = LensFamily f a a b b
Lens Combinators
mergeL :: Functor f => LensFamily f a a' c c' -> LensFamily f b b' c c' -> LensFamily f (Either a b) (Either a' b') c c'Source
Given two lens/getter/setter families with the same substructure, make a new lens/getter/setter on Either
.
(***) :: Functor f => ClonerFamily a1 a1' b1 b1' -> ClonerFamily a2 a2' b2 b2' -> LensFamily f (a1, a2) (a1', a2') (b1, b2) (b1', b2')Source
Given two lens families, make a new lens on their product.
Stock Lenses
fstL :: Functor f => LensFamily f (a, b) (a', b) a a'Source
Lens on the first element of a pair.
sndL :: Functor f => LensFamily f (a, b) (a, b') b b'Source
Lens on the second element of a pair.
Types
type LensFamily f a a' b b' = (b -> f b') -> a -> f a'Source
type Lens f a b = LensFamily f a a b bSource