Safe Haskell | None |
---|
Control.Monad.WrapBase
Description
MonadWrapBase
is a generalized version of MonadWrapIO
to work
around transformed versions of other base monads.
Documentation
class Monad m => MonadWrapBase m b a r | m -> b, m b a -> r whereSource
Methods
wrapBase :: (b r -> b r) -> m a -> m aSource
resultBase :: a -> m rSource
resultFBase :: m (a -> r)Source
Instances
MonadWrapBase [] [] a a | |
MonadWrapBase IO IO a a | |
MonadWrapBase STM STM a a | |
MonadWrapBase Maybe Maybe a a | |
MonadWrapBase Identity Identity a a | |
(Monad m, MonadTrans t, Monad (t m), MonadWrapBase m b ar r, MonadWrap t a ar) => MonadWrapBase (t m) b a r | |
MonadWrapBase ((->) r) ((->) r) a a | |
MonadWrapBase (Either e) (Either e) a a | |
MonadWrapBase (ST s) (ST s) a a | |
MonadWrapBase (ST s) (ST s) a a |