| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Control.Monad.IO.Rerunnable
Description
Defines the MonadRerunnableIO type class that is functionally equivalent
to MonadIO, but use of it requires the user to
explicitly acknowledge that the given IO operation can be rerun.
Synopsis
- class Monad m => MonadRerunnableIO m where
- rerunnableIO :: IO a -> m a
Documentation
class Monad m => MonadRerunnableIO m where Source #
A copy of MonadIO to explicitly allow only IO
operations that are rerunnable, e.g. in the context of a SQL transaction.
Methods
rerunnableIO :: IO a -> m a Source #
Lift the given IO operation to m.
The given IO operation may be rerun, so use of this function requires manually verifying that the given IO operation is rerunnable.