evalContT
:: Monad a => ContT b a b -> a b
|
mapContT
:: (a b -> a b) -> ContT b a c -> ContT b a c
|
withContT
:: ((a -> b c) -> d -> b c) -> ContT c b d -> ContT c b a
|
resetT
:: Monad a => ContT b a b -> ContT c a b
|
shiftT
:: Monad a => ((b -> a c) -> ContT c a c) -> ContT c a b
|
liftLocal
:: Monad a => a b -> ((b -> b) -> a c -> a c) -> (b -> b) -> ContT c a d -> ContT c a d
|
cont
:: ((a -> b) -> b) -> ContT b Identity a
|
runCont
:: ContT a Identity b -> (b -> a) -> a
|
evalCont
:: ContT a Identity a -> a
|
mapCont
:: (a -> a) -> ContT a Identity b -> ContT a Identity b
|
withCont
:: ((a -> b) -> c -> b) -> ContT b Identity c -> ContT b Identity a
|
reset
:: ContT a Identity a -> ContT b Identity a
|
shift
:: ((a -> b) -> ContT b Identity b) -> ContT b Identity a
|
Constructor:
ContT
:: ((c -> b a) -> b a) -> ContT a b c
Fields:
runContT
:: ((c -> b a) -> b a)
Type synonym: Cont a = ContT a Identity