Maintainer | Ertugrul Soeylemez <es@ertes.de> |
---|---|

Safe Haskell | None |

# Suspension

class (Plus f, Monad m, Monoid e) => MonadContinue e f m | m -> e, m -> f whereSource

Type class for monads that support suspension and continuation spots.

:: Either e a | What to return now (left suspends). |

-> f (m a) | What to run and return when reentering. |

-> m a |

Add the given set of continuations and possibly suspend.

MonadContinue e f m => MonadContinue e f (MaybeT m) | |

MonadContinue e f m => MonadContinue e f (IdentityT m) | |

(MonadContinue e f m, Monoid l) => MonadContinue e f (WriterT l m) | |

(MonadContinue e f m, Monoid l) => MonadContinue e f (WriterT l m) | |

MonadContinue e f m => MonadContinue e f (StateT s m) | Time travel warning: Captures the current state, not the state at reentry! |

MonadContinue e f m => MonadContinue e f (StateT s m) | Time travel warning: Captures the current state, not the state at reentry! |

MonadContinue e f m => MonadContinue e f (ReaderT r m) | |

(Monad m, Monoid e, Plus f) => MonadContinue e f (ContinueT e f m) |