IdrisDoc: Control.Monad.Free

Control.Monad.Free

lowerFree : Monad f => Free f a -> f a
liftFree : Functor f => f a -> Free f a
iterM : Monad m => Functor f => (f (m a) -> m a) -> Free f a -> m a
hoistFree : Functor g => (f a -> g a) -> Free f b -> Free g b
foldFree : Monad m => Functor f => (f a -> m a) -> Free f b -> m b
interface MonadFree 
wrap : MonadFree m f => f (m a) -> m a
data Free : (f : Type -> Type) -> (a : Type) -> Type
Pure : a -> Free f a
Bind : f (Free f a) -> Free f a