Module Control.Monad.Trans.Cont

Summary of exported operations:

evalContT :: Monad a => ContT b a b -> a b  Deterministic 
mapContT :: (a b -> a b) -> ContT b a c -> ContT b a c  Deterministic 
withContT :: ((a -> b c) -> d -> b c) -> ContT c b d -> ContT c b a  Deterministic 
resetT :: Monad a => ContT b a b -> ContT c a b  Deterministic 
shiftT :: Monad a => ((b -> a c) -> ContT c a c) -> ContT c a b  Deterministic 
liftLocal :: Monad a => a b -> ((b -> b) -> a c -> a c) -> (b -> b) -> ContT c a d -> ContT c a d  Deterministic 
cont :: ((a -> b) -> b) -> ContT b Identity a  Deterministic 
runCont :: ContT a Identity b -> (b -> a) -> a  Deterministic 
evalCont :: ContT a Identity a -> a  Deterministic 
mapCont :: (a -> a) -> ContT a Identity b -> ContT a Identity b  Deterministic 
withCont :: ((a -> b) -> c -> b) -> ContT b Identity c -> ContT b Identity a  Deterministic 
reset :: ContT a Identity a -> ContT b Identity a  Deterministic 
shift :: ((a -> b) -> ContT b Identity b) -> ContT b Identity a  Deterministic 

Exported datatypes:


newtype ContT

Constructor:

  • ContT :: ((c -> b a) -> b a) -> ContT a b c

    Fields:

    • runContT :: ((c -> b a) -> b a)

Cont

Type synonym: Cont a = ContT a Identity


Exported operations:

evalContT :: Monad a => ContT b a b -> a b  Deterministic 

mapContT :: (a b -> a b) -> ContT b a c -> ContT b a c  Deterministic 

withContT :: ((a -> b c) -> d -> b c) -> ContT c b d -> ContT c b a  Deterministic 

resetT :: Monad a => ContT b a b -> ContT c a b  Deterministic 

shiftT :: Monad a => ((b -> a c) -> ContT c a c) -> ContT c a b  Deterministic 

liftLocal :: Monad a => a b -> ((b -> b) -> a c -> a c) -> (b -> b) -> ContT c a d -> ContT c a d  Deterministic 

cont :: ((a -> b) -> b) -> ContT b Identity a  Deterministic 

runCont :: ContT a Identity b -> (b -> a) -> a  Deterministic 

evalCont :: ContT a Identity a -> a  Deterministic 

mapCont :: (a -> a) -> ContT a Identity b -> ContT a Identity b  Deterministic 

withCont :: ((a -> b) -> c -> b) -> ContT b Identity c -> ContT b Identity a  Deterministic 

reset :: ContT a Identity a -> ContT b Identity a  Deterministic 

shift :: ((a -> b) -> ContT b Identity b) -> ContT b Identity a  Deterministic