Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data EitherEffect effect1 effect2 context result
- liftEffect1 :: effect1 result -> EitherEffect effect1 effect2 context result
- liftEffect2 :: effect2 result -> EitherEffect effect1 effect2 context result
- executor :: Executor effect1 context -> Executor effect2 context -> Executor (EitherEffect effect1 effect2 context) context
Documentation
data EitherEffect effect1 effect2 context result Source #
A sum of two effects (effect1
and effect2
) to be executed
in context
producing result
.
MonadTrans (EitherEffect effect1 effect2) Source # | |
Monad context => Monad (EitherEffect effect1 effect2 context) Source # | |
Functor context => Functor (EitherEffect effect1 effect2 context) Source # | |
Applicative context => Applicative (EitherEffect effect1 effect2 context) Source # | |
MonadIO context => MonadIO (EitherEffect effect1 effect2 context) Source # | |
Alternative context => Alternative (EitherEffect effect1 effect2 context) Source # | |
MonadPlus context => MonadPlus (EitherEffect effect1 effect2 context) Source # | |
liftEffect1 :: effect1 result -> EitherEffect effect1 effect2 context result Source #
Lift the first of the two effects.
liftEffect2 :: effect2 result -> EitherEffect effect1 effect2 context result Source #
Lift the second of the two effects.