Stability | experimental |
---|---|
Maintainer | Ertugrul Soeylemez <es@ertes.de> |
This module provides all the transformers from Control.ContStuff.Trans, but with a simplified interface, hiding the underlying CPS machinery.
- type ChoiceT m a = forall r i. ChoiceT r i m a
- choice :: [a] -> ChoiceT m a
- findAll :: (Alternative f, Applicative m) => ChoiceT m a -> m (f a)
- findAll_ :: Applicative m => ChoiceT m a -> m ()
- findFirst :: (Alternative f, Applicative m) => ChoiceT m a -> m (f a)
- findFirst_ :: Applicative m => ChoiceT m a -> m ()
- listA :: Alternative f => [a] -> f a
- listChoiceT :: Applicative m => ChoiceT m a -> m [a]
- maybeChoiceT :: Applicative m => ChoiceT m a -> m (Maybe a)
- type EitherT e m a = forall r. EitherT r e m a
- evalEitherT :: Applicative m => EitherT e m a -> m (Either e a)
- testEitherT :: Applicative m => EitherT e m a -> m Bool
- type MaybeT m a = forall r. MaybeT r m a
- evalMaybeT :: Applicative m => MaybeT m a -> m (Maybe a)
- testMaybeT :: Applicative m => MaybeT m a -> m Bool
- type StateT s m a = forall r. StateT r s m a
- evalStateT :: Applicative m => s -> StateT s m a -> m a
- execStateT :: Applicative m => s -> StateT s m a -> m s
- type WriterT w m a = forall r. OldWriterT r w m a
- runWriterT :: (Applicative m, Monoid w) => WriterT w m a -> m (a, w)
- evalWriterT :: (Applicative m, Monoid w) => WriterT w m a -> m a
- execWriterT :: (Applicative m, Monoid w) => WriterT w m a -> m w
- module Control.Applicative
- module Control.ContStuff.Classes
- module Control.Monad
Choice/nondeterminism
findAll :: (Alternative f, Applicative m) => ChoiceT m a -> m (f a)Source
findAll_ :: Applicative m => ChoiceT m a -> m ()Source
findFirst :: (Alternative f, Applicative m) => ChoiceT m a -> m (f a)Source
findFirst_ :: Applicative m => ChoiceT m a -> m ()Source
listA :: Alternative f => [a] -> f aSource
Turn a list into a computation with alternatives.
listChoiceT :: Applicative m => ChoiceT m a -> m [a]Source
maybeChoiceT :: Applicative m => ChoiceT m a -> m (Maybe a)Source
Exceptions
evalEitherT :: Applicative m => EitherT e m a -> m (Either e a)Source
testEitherT :: Applicative m => EitherT e m a -> m BoolSource
evalMaybeT :: Applicative m => MaybeT m a -> m (Maybe a)Source
testMaybeT :: Applicative m => MaybeT m a -> m BoolSource
State
evalStateT :: Applicative m => s -> StateT s m a -> m aSource
execStateT :: Applicative m => s -> StateT s m a -> m sSource
Writer
type WriterT w m a = forall r. OldWriterT r w m aSource
runWriterT :: (Applicative m, Monoid w) => WriterT w m a -> m (a, w)Source
evalWriterT :: (Applicative m, Monoid w) => WriterT w m a -> m aSource
execWriterT :: (Applicative m, Monoid w) => WriterT w m a -> m wSource
Reexports
module Control.Applicative
module Control.ContStuff.Classes
module Control.Monad