proton-0.0.4
Safe HaskellNone
LanguageHaskell2010

Proton.Fold

Documentation

type Fold s t a b = forall p. (Traversing p, Phantom p) => p a b -> p s t Source #

folding :: (Foldable f, Phantom p, Traversing p) => (s -> f a) -> p a b -> p s t Source #

folded :: (Traversing p, Foldable f, Phantom p) => p a b -> p (f a) t Source #

foldOf :: Monoid a => Fold s t a b -> s -> a Source #

foldMapOf :: Monoid m => Optic (Forget m) s t a b -> (a -> m) -> s -> m Source #

toListOf :: Optic (Forget [a]) s t a b -> s -> [a] Source #

preview :: Optic (Forget (First a)) s t a b -> s -> Maybe a Source #

(^?) :: s -> Optic (Forget (First a)) s t a b -> Maybe a Source #

(^..) :: s -> Optic (Forget [a]) s t a b -> [a] Source #

(<+>) :: Semigroup r => Optic (Forget r) s t a b -> Optic (Forget r) s t' a b' -> Optic (Forget r) s t a b Source #