Module
Control.Monad.Trans.Unlift
- Package
- purescript-monad-unlift
- Repository
- athanclark/purescript-monad-unlift
#MonadTransUnlift Source
class (MonadTransControl m t stT, SingletonFunctor stT, Functor m, Functor (t m)) <= MonadTransUnlift m t stT | t -> stT
Instances
(MonadTransControl m t stT, SingletonFunctor stT, Functor m, Functor (t m)) => MonadTransUnlift m t stT
#mkUnlift Source
mkUnlift :: forall stT a m t. SingletonFunctor stT => Functor m => (forall b. t m b -> m (stT b)) -> t m a -> m a
#askUnlift Source
askUnlift :: forall stT m t. MonadTransUnlift m t stT => Functor m => t m (Unlift t m)
#askRun Source
askRun :: forall stT a m t. MonadTransUnlift m t stT => Functor m => t m (t m a -> m a)
#MonadBaseUnlift Source
class (MonadBaseControl base m stM, SingletonFunctor stM, Functor base, Functor m) <= MonadBaseUnlift base m stM | m -> stM base
Instances
(MonadBaseControl base m stM, SingletonFunctor stM, Functor base, Functor m) => MonadBaseUnlift base m stM
#mkUnliftBase Source
mkUnliftBase :: forall a stM m base. SingletonFunctor stM => Functor base => (forall b. m b -> base (stM b)) -> m a -> base a
#unliftBase Source
unliftBase :: forall m base. UnliftBase base m -> (forall a. m a -> base a)
#askUnliftBase Source
askUnliftBase :: forall stM m base. MonadBaseUnlift base m stM => Applicative base => m (UnliftBase base m)
#askRunBase Source
askRunBase :: forall a stM m base. MonadBaseUnlift base m stM => Applicative base => m (m a -> base a)
- Modules
- Control.
Monad. Trans. Unlift