Safe Haskell | None |
---|---|
Language | Haskell98 |
Register reference implementation for the MonadRefCreator
interface.
The implementation uses unsafeCoerce
internally, but its effect cannot escape.
Documentation
MonadTrans Register | |
Monad n => Monad (Register n) | |
Functor n => Functor (Register n) | |
MonadFix m => MonadFix (Register m) | |
(Monad n, Functor n) => Applicative (Register n) | |
Monad n => MonadRegister (Register n) | |
Monad m => MonadMemo (Register m) | |
Monad n => MonadRefCreator (Register n) | |
Monad n => MonadRefWriter (Register n) | |
Monad m => MonadRefReader (Register m) | |
type EffectM (Register n) = n | |
type Modifier (Register n) = Register n | |
type BaseRef (Register m) |
runRegister :: Monad m => (forall a. m (m a, a -> m ())) -> Register m a -> m (a, m ()) Source