Safe Haskell | None |
---|---|
Language | Haskell2010 |
- class Monad m => MonadObjective m where
- (.&) :: (MonadObjective m, Lift (State s) f) => Address f m -> StateT s m a -> m a
- (.|-) :: MonadObjective m => Address e m -> Free e a -> m a
- (.^>) :: (MonadObjective m, f ∈ u) => Address (Union u) m -> f a -> m a
- (.<<) :: (MonadObjective m, Lift (Request a b) f) => Address f m -> a -> m b
Documentation
class Monad m => MonadObjective m where Source
(.-) :: Address e m -> e a -> m a infix 3 Source
Send a message to the pointed one.
new :: Object e (Residence m) -> m (Address e m) Source
Add an object to the environment.
MonadObjective IO | |
MonadObjective m => MonadObjective (IdentityT m) | |
MonadObjective m => MonadObjective (ListT m) | |
MonadObjective m => MonadObjective (MaybeT m) | |
MonadObjective m => MonadObjective (ContT r m) | |
MonadObjective m => MonadObjective (ReaderT r m) | |
MonadObjective m => MonadObjective (StateT s m) | |
MonadObjective m => MonadObjective (StateT s m) | |
MonadObjective m => MonadObjective (ExceptT er m) | |
(Monoid w, MonadObjective m) => MonadObjective (WriterT w m) | |
(Monoid w, MonadObjective m) => MonadObjective (WriterT w m) | |
(Monoid w, MonadObjective m) => MonadObjective (RWST r w s m) | |
(Monoid w, MonadObjective m) => MonadObjective (RWST r w s m) |
(.|-) :: MonadObjective m => Address e m -> Free e a -> m a infix 3 Source
like sequential
, but it allows ad-hoc use of Free
.