Safe Haskell | Safe-Inferred |
---|
Documentation
class Monad m => MonadWrapIO m a r | m a -> r whereSource
MonadWrapIO is analogous to MonadWrap
, but where the wrapping
function is always of type
. The point of
IO
r -> IO
rMonadWrapIO
is to go through as many nested monad transformers as
necessary to reach the IO
monad, so you don't have to keep track
of where you are in terms of monad nesting depth.
MonadWrapIO IO a a | |
(Monad m, MonadTrans t, Monad (t m), MonadWrapIO m ar r, MonadWrap t a ar) => MonadWrapIO (t m) a r |