Copyright | (c) Andy Gill 2001, (c) Oregon Graduate Institute of Science and Technology, 2001 |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | [email protected] |
Stability | experimental |
Portability | portable |
Safe Haskell | Safe |
Language | Haskell98 |
The ListT monad transformer, adding backtracking to a given monad, which must be commutative.
Parameterizable list monad, with an inner monad.
Note: this does not yield a monad unless the argument monad is commutative.
MonadTrans ListT | |
Monad m => Monad (ListT m) | |
Functor m => Functor (ListT m) | |
Applicative m => Applicative (ListT m) | |
Foldable f => Foldable (ListT f) | |
Traversable f => Traversable (ListT f) | |
Applicative m => Alternative (ListT m) | |
Monad m => MonadPlus (ListT m) | |
MonadIO m => MonadIO (ListT m) | |
Show1 m => Show1 (ListT m) | |
Read1 m => Read1 (ListT m) | |
Ord1 m => Ord1 (ListT m) | |
Eq1 m => Eq1 (ListT m) | |
(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) |
mapListT :: (m [a] -> n [b]) -> ListT m a -> ListT n b Source
Map between ListT
computations.
liftCallCC :: CallCC m [a] [b] -> CallCC (ListT m) a b Source
Lift a callCC
operation to the new monad.
liftCatch :: Catch e m [a] -> Catch e (ListT m) a Source
Lift a catchE
operation to the new monad.
© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/7.10.3/docs/html/libraries/transformers-0.4.2.0/Control-Monad-Trans-List.html