| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Fx.EitherEffect
- 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.
Instances
| 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.