Box.Functor
class FFunctor (h :: (Type -> Type) -> Type -> Type) where Source #
An endofunctor in the category of endofunctors.
Like MFunctor but without a Monad constraint.
MFunctor
Monad
Methods
foist :: (forall x. f x -> g x) -> h f a -> h g a Source #
Defined in Box.Emitter
foist :: (forall x. f x -> g x) -> Emitter f a -> Emitter g a Source #
Defined in Box.Committer
foist :: (forall x. f x -> g x) -> Committer f a -> Committer g a Source #
class FoldableM (t :: (Type -> Type) -> Type -> Type) where Source #
Monadically Foldable
foldrM :: Monad m => (a -> m b -> m b) -> m b -> t m a -> m b Source #
This fold completes on the first Nothing emitted, which may not be what you want.
foldrM :: Monad m => (a -> m b -> m b) -> m b -> Emitter m a -> m b Source #