| Copyright | (C) 2012-2015 Edward Kmett |
|---|---|
| License | BSD-style (see the file LICENSE) |
| Maintainer | Edward Kmett <ekmett@gmail.com> |
| Stability | experimental |
| Portability | non-portable |
| Safe Haskell | Safe-Inferred |
| Language | Haskell98 |
Control.Lens.Internal.Fold
Contents
Description
- newtype Folding f a = Folding {
- getFolding :: f a
- newtype Traversed a f = Traversed {
- getTraversed :: f a
- newtype Sequenced a m = Sequenced {
- getSequenced :: m a
- data Max a
- getMax :: Max a -> Maybe a
- data Min a
- getMin :: Min a -> Maybe a
- data Leftmost a
- getLeftmost :: Leftmost a -> Maybe a
- data Rightmost a
- getRightmost :: Rightmost a -> Maybe a
- data ReifiedMonoid a = ReifiedMonoid {
- reifiedMappend :: a -> a -> a
- reifiedMempty :: a
- newtype M a s = M a
- reifyFold :: (a -> a -> a) -> a -> (forall s. Reifies s (ReifiedMonoid a) => t -> M a s) -> t -> a
Monoids for folding
A Monoid for a Contravariant Applicative.
Constructors
| Folding | |
Fields
| |
Instances
| (Contravariant f, Applicative f) => Monoid (Folding f a) | |
| (Contravariant f, Apply f) => Semigroup (Folding f a) |
Used internally by traverseOf_ and the like.
The argument a of the result should not be used!
Constructors
| Traversed | |
Fields
| |
Instances
| Applicative f => Monoid (Traversed a f) | |
| Apply f => Semigroup (Traversed a f) |
Used internally by mapM_ and the like.
The argument a of the result should not be used!
Constructors
| Sequenced | |
Fields
| |
Used for maximumOf.
Used for minimumOf.
Used for preview.
getLeftmost :: Leftmost a -> Maybe a Source
Used for lastOf.
getRightmost :: Rightmost a -> Maybe a Source
data ReifiedMonoid a Source
Constructors
| ReifiedMonoid | |
Fields
| |
reifyFold :: (a -> a -> a) -> a -> (forall s. Reifies s (ReifiedMonoid a) => t -> M a s) -> t -> a Source