Idris2Doc : Control.Monad.Trans.Free.Church

Control.Monad.Trans.Free.Church

(source)

Definitions

record FT : (Type -> Type) -> (Type -> Type) -> Type -> Type
  Church-encoded free monad transformer. Translated from:
https://hackage.haskell.org/package/free-5.1.8/docs/src/Control.Monad.Trans.Free.Church.html

Totality: total
Visibility: public export
Constructor: 
MkFT : ((a -> m r) -> ((x -> m r) -> f x -> m r) -> m r) -> FT f m a

Projection: 
.runFT : FT f m a -> (a -> m r) -> ((x -> m r) -> f x -> m r) -> m r

Hints:
Applicative (FT f m)
Functor (FT f m)
Monad (FT f m)
MonadFree f (FT f m)
MonadTrans (FT f)
.runFT : FT f m a -> (a -> m r) -> ((x -> m r) -> f x -> m r) -> m r
Visibility: public export
runFT : FT f m a -> (a -> m r) -> ((x -> m r) -> f x -> m r) -> m r
Visibility: public export
hoistFT : (Monad m, Monad n) => (m x -> n x) -> FT f m a -> FT f n a
Visibility: export
iterT : (Functor f, Monad m) => (f (m a) -> m a) -> FT f m a -> m a
Visibility: export
iterTM : (Functor f, (Monad m, (MonadTrans t, Monad (t m)))) => (f (t m a) -> t m a) -> FT f m a -> t m a
Visibility: export