Copyright | (c) Andy Gill 2001 (c) Oregon Graduate Institute of Science and Technology 2001 |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | libraries@haskell.org |
Stability | experimental |
Portability | portable |
Safe Haskell | Safe |
Language | Haskell2010 |
The List monad.
Synopsis
- newtype ListT (m :: * -> *) a = ListT {
- runListT :: m [a]
- mapListT :: (m [a] -> n [b]) -> ListT m a -> ListT n b
- module Control.Monad
- module Control.Monad.Trans
Documentation
newtype ListT (m :: * -> *) a #
Parameterizable list monad, with an inner monad.
Note: this does not yield a monad unless the argument monad is commutative.
Instances
MonadTrans ListT | |
MonadError e m => MonadError e (ListT m) Source # | |
throwError :: e -> ListT m a Source # catchError :: ListT m a -> (e -> ListT m a) -> ListT m a Source # | |
MonadReader r m => MonadReader r (ListT m) Source # | |
MonadState s m => MonadState s (ListT m) Source # | |
Monad m => Monad (ListT m) | |
Functor m => Functor (ListT m) | |
Monad m => MonadFail (ListT m) | |
Applicative m => Applicative (ListT m) | |
Foldable f => Foldable (ListT f) | |
fold :: Monoid m => ListT f m -> m # foldMap :: Monoid m => (a -> m) -> ListT f a -> m # foldr :: (a -> b -> b) -> b -> ListT f a -> b # foldr' :: (a -> b -> b) -> b -> ListT f a -> b # foldl :: (b -> a -> b) -> b -> ListT f a -> b # foldl' :: (b -> a -> b) -> b -> ListT f a -> b # foldr1 :: (a -> a -> a) -> ListT f a -> a # foldl1 :: (a -> a -> a) -> ListT f a -> a # elem :: Eq a => a -> ListT f a -> Bool # maximum :: Ord a => ListT f a -> a # minimum :: Ord a => ListT f a -> a # | |
Traversable f => Traversable (ListT f) | |
Eq1 m => Eq1 (ListT m) | |
Ord1 m => Ord1 (ListT m) | |
Read1 m => Read1 (ListT m) | |
Show1 m => Show1 (ListT m) | |
MonadZip m => MonadZip (ListT m) | |
MonadIO m => MonadIO (ListT m) | |
Applicative m => Alternative (ListT m) | |
Monad m => MonadPlus (ListT m) | |
MonadCont m => MonadCont (ListT m) Source # | |
(Eq1 m, Eq a) => Eq (ListT m a) | |
(Ord1 m, Ord a) => Ord (ListT m a) | |
(Read1 m, Read a) => Read (ListT m a) | |
(Show1 m, Show a) => Show (ListT m a) | |
module Control.Monad
module Control.Monad.Trans