Safe Haskell | None |
---|---|
Language | Haskell2010 |
- class (Monad m, MemberEffect Lift (Lift m) l) => EffectLift m l
- newtype Lift m a = Lift {
- unLift :: m a
- runLift :: Monad m => Effect (Lift m :+ Nil) a -> m a
- lift :: EffectLift m l => m a -> Effect l a
- liftEffect :: EffectLift m l => m (Effect l a) -> Effect l a
Documentation
class (Monad m, MemberEffect Lift (Lift m) l) => EffectLift m l Source #
An effect described by a monad.
runLift :: Monad m => Effect (Lift m :+ Nil) a -> m a Source #
Converts a computation containing only monadic effects into a monadic computation.
lift :: EffectLift m l => m a -> Effect l a Source #
Lifts a monadic value into an effect.
liftEffect :: EffectLift m l => m (Effect l a) -> Effect l a Source #
Lifts a monadic value into an effect.