 | Monatron-0.3: Monad transformer library with uniform liftings | Contents | Index |
|
|
|
|
|
| Documentation |
|
| type ExtModel f g m = forall a. f (m (g a)) -> m a |
|
| type Model f m = forall a. f (m a) -> m a |
|
| type AlgModel f m = forall a. f a -> m a |
|
| toAlg :: (Functor f, Monad m) => Model f m -> AlgModel f (Codensity m) |
|
| liftModel :: (Functor f, Monad m, Functor m, FMonadT t, Monad (t (Codensity m))) => Model f m -> Model f (t m) |
|
| liftAlgModel :: (MonadT t, Monad m, Functor f) => AlgModel f m -> AlgModel f (t m) |
|
| liftExtModel :: (Functor f, Functor g, Monad m, Functor m, MMonadT t, Functor (t f), Functor (t m)) => ExtModel f g m -> ExtModel f g (t m) |
|
| data StateOp s a |
| Constructors | | Instances | |
|
|
| modelStateT :: Monad m => AlgModel (StateOp s) (StateT s m) |
|
| getX :: Monad m => AlgModel (StateOp s) m -> m s |
|
| putX :: Monad m => AlgModel (StateOp s) m -> s -> m () |
|
| data ReaderOp s a |
| Constructors | | Instances | |
|
|
| modelReaderT :: Monad m => Model (ReaderOp s) (ReaderT s m) |
|
| askX :: Monad m => Model (ReaderOp s) m -> m s |
|
| inEnvX :: Monad m => Model (ReaderOp s) m -> s -> m a -> m a |
|
| localX :: Monad m => Model (ReaderOp z) m -> (z -> z) -> m a -> m a |
|
| data WriterOp w a |
| Constructors | | Instances | |
|
|
| modelWriterT :: (Monad m, Monoid w) => AlgModel (WriterOp w) (WriterT w m) |
|
| traceX :: Monad m => AlgModel (WriterOp w) m -> w -> m () |
|
| data ThrowOp x a |
| Constructors | | Instances | |
|
|
| data HandleOp x a |
| Constructors | | Instances | |
|
|
| modelThrowExcT :: Monad m => AlgModel (ThrowOp x) (ExcT x m) |
|
| modelHandleExcT :: Monad m => Model (HandleOp x) (ExcT x m) |
|
| modelThrowIO :: AlgModel (ThrowOp SomeException) IO |
|
| modelHandleIO :: Model (HandleOp SomeException) IO |
|
| throwX :: Monad m => AlgModel (ThrowOp x) m -> x -> m a |
|
| handleX :: Monad m => Model (HandleOp x) m -> m a -> (x -> m a) -> m a |
|
| data ContOp r a |
| Constructors | | Abort r | | | CallCC ((a -> r) -> a) | |
| Instances | |
|
|
| modelContT :: Monad m => AlgModel (ContOp (m r)) (ContT r m) |
|
| callccX :: Monad m => AlgModel (ContOp r) m -> ((a -> m b) -> m a) -> m a |
|
| callCCX :: Monad m => AlgModel (ContOp r) m -> ((a -> r) -> a) -> m a |
|
| abortX :: Monad m => AlgModel (ContOp r) m -> r -> m a |
|
| newtype StepOp f x |
| Constructors | | Instances | |
|
|
| stepX :: Monad m => Model (StepOp f) m -> f (m x) -> m x |
|
| modelStepT :: (Functor f, Monad m) => Model (StepOp f) (StepT f m) |
|
| data ListOp a |
| Constructors | | Instances | |
|
|
| modelListT :: Monad m => AlgModel ListOp (ListT m) |
|
| zeroListX :: Monad m => AlgModel ListOp m -> m a |
|
| plusListX :: Monad m => AlgModel ListOp m -> m a -> m a -> m a |
|
| module Monatron.Transformer |
|
| Produced by Haddock version 2.4.2 |