Module
Control.Monad.Trans.Control
- Package
- purescript-monad-control
- Repository
- athanclark/purescript-monad-control
#MonadTransControl Source
class (MonadTrans t) <= MonadTransControl t stT | t -> stT whereMembers
liftWith :: forall b m. Monad m => ((forall a. t m a -> m (stT a)) -> m b) -> t m brestoreT :: forall a m. Monad m => m (stT a) -> t m a
Instances
MonadTransControl (ReaderT r) Identity(Monoid r) => MonadTransControl (WriterT r) (WriterTStT r)MonadTransControl (StateT r) (WriterTStT r)MonadTransControl (ExceptT r) (Either r)MonadTransControl MaybeT Maybe(Monoid w) => MonadTransControl (RWST r w s) (Compose (Tuple w) (Tuple s))
#WriterTStT Source
data WriterTStT w aConstructors
WriterTStT w a
Instances
Functor (WriterTStT w)(Monoid r) => MonadTransControl (WriterT r) (WriterTStT r)MonadTransControl (StateT r) (WriterTStT r)(MonadBaseControl base m stM, Monad m, Monad base, Monoid r) => MonadBaseControl base (WriterT r m) (Compose stM (WriterTStT r))(MonadBaseControl base m stM, Monad m, Monad base) => MonadBaseControl base (StateT r m) (Compose stM (WriterTStT r))
#writerTStTToTuple Source
writerTStTToTuple :: forall a w. WriterTStT w a -> Tuple a w#tupleToWriterTStT Source
tupleToWriterTStT :: forall a w. Tuple a w -> WriterTStT w a#MonadBaseControl Source
class (MonadBase base m) <= MonadBaseControl base m stM | m -> stM base whereMembers
liftBaseWith :: forall b. ((forall a. m a -> base (stM a)) -> base b) -> m brestoreM :: forall a. base (stM a) -> m a
Instances
MonadBaseControl (Eff e) (Eff e) IdentityMonadBaseControl (Either e) (Either e) Identity(Monoid e) => MonadBaseControl (Tuple e) (Tuple e) IdentityMonadBaseControl Maybe Maybe IdentityMonadBaseControl Identity Identity IdentityMonadBaseControl List List IdentityMonadBaseControl Array Array IdentityMonadBaseControl (Function r) (Function r) Identity(MonadBaseControl base m stM, Monad m, Monad base) => MonadBaseControl base (ReaderT r m) (Compose stM Identity)(MonadBaseControl base m stM, Monad m, Monad base, Monoid r) => MonadBaseControl base (WriterT r m) (Compose stM (WriterTStT r))(MonadBaseControl base m stM, Monad m, Monad base) => MonadBaseControl base (StateT r m) (Compose stM (WriterTStT r))(MonadBaseControl base m stM, Monad m, Monad base) => MonadBaseControl base (ExceptT r m) (Compose stM (Either r))(MonadBaseControl base m stM, Monad m, Monad base) => MonadBaseControl base (MaybeT m) (Compose stM Maybe)(MonadBaseControl base m stM, Monad m, Monad base, Monoid w) => MonadBaseControl base (RWST r w s m) (Compose stM (Compose (Tuple w) (Tuple s)))
#defaultLiftBaseWith Source
defaultLiftBaseWith :: forall b stT stM t m base. MonadBaseControl base m stM => Monad m => Monad base => MonadTrans t => MonadTransControl t stT => ((forall a. t m a -> base (Compose stM stT a)) -> base b) -> t m b#defaultRestoreM Source
defaultRestoreM :: forall a stT stM t m base. MonadBaseControl base m stM => Monad m => Monad base => MonadTrans t => MonadTransControl t stT => base (Compose stM stT a) -> t m a