| Haskell Hierarchical Libraries (mtl package) | Source code | Contents | Index

Control.Monad.Cont |

Portability | non-portable (multi-parameter type classes)
Stability | experimental
Maintainer | libraries@haskell.org

Description
Continuation monads.
Documentation
class Monad m => MonadCont m where

Methods

callCC :: ((a -> m b) -> m a) -> m a

Instances

MonadCont (Cont r)
MonadCont m => MonadCont (ListT m)
Monad m => MonadCont (ContT r m)
(Error e, MonadCont m) => MonadCont (ErrorT e m)
MonadCont m => MonadCont (ReaderT r m)
MonadCont m => MonadCont (StateT s m)
(Monoid w, MonadCont m) => MonadCont (WriterT w m)
(Monoid w, MonadCont m) => MonadCont (RWST r w s m)

newtype Cont r a

Constructors

Cont |

runCont :: ((a -> r) -> r) |

Instances

Functor (Cont r)
Monad (Cont r)
MonadCont (Cont r)

mapCont :: (r -> r) -> Cont r a -> Cont r a
withCont :: ((b -> r) -> a -> r) -> Cont r a -> Cont r b
newtype ContT r m a

Constructors

ContT |

runContT :: ((a -> m r) -> m r) |

Instances

MonadReader r' m => MonadReader r' (ContT r m)
MonadState s m => MonadState s (ContT r m)
MonadTrans (ContT r)
Monad m => Functor (ContT r m)
Monad m => Monad (ContT r m)
Monad m => MonadCont (ContT r m)
MonadIO m => MonadIO (ContT r m)

mapContT :: (m r -> m r) -> ContT r m a -> ContT r m a
withContT :: ((b -> m r) -> a -> m r) -> ContT r m a -> ContT r m b
module Control.Monad
module Control.Monad.Trans
Produced by Haddock version 0.8