Control.Monad.ListT

List-0.5.2: List monad transformer and class

Safe Haskell | Safe
Language | Haskell98

Control.Monad.ListT

# Documentation

newtype ListT m a #

Constructors

ListT |
Fields runListT :: m (ListItem (ListT m) a)

Instances

MonadTrans ListT # |
Methods lift :: Monad m => m a -> ListT m a #
Monad m => Monad (ListT m) # |
Methods (>>=) :: ListT m a -> (a -> ListT m b) -> ListT m b # (>>) :: ListT m a -> ListT m b -> ListT m b # return :: a -> ListT m a # fail :: String -> ListT m a #
Monad m => Functor (ListT m) # |
Methods fmap :: (a -> b) -> ListT m a -> ListT m b # (<$) :: a -> ListT m b -> ListT m a #
Monad m => Applicative (ListT m) # |
Methods pure :: a -> ListT m a # (<*>) :: ListT m (a -> b) -> ListT m a -> ListT m b # liftA2 :: (a -> b -> c) -> ListT m a -> ListT m b -> ListT m c # (*>) :: ListT m a -> ListT m b -> ListT m b # (<*) :: ListT m a -> ListT m b -> ListT m a #
MonadIO m => MonadIO (ListT m) # |
Methods liftIO :: IO a -> ListT m a #
Monad m => Alternative (ListT m) # |
Methods empty :: ListT m a # (<|>) :: ListT m a -> ListT m a -> ListT m a # some :: ListT m a -> ListT m [a] # many :: ListT m a -> ListT m [a] #
Monad m => MonadPlus (ListT m) # |
Methods mzero :: ListT m a # mplus :: ListT m a -> ListT m a -> ListT m a #
Monad m => List (ListT m) # |
Associated Types type ItemM (ListT m :: * -> *) :: * -> * # Methods runList :: ListT m a -> ItemM (ListT m) (ListItem (ListT m) a) # joinL :: ItemM (ListT m) (ListT m a) -> ListT m a # cons :: a -> ListT m a -> ListT m a #
Eq (m (ListItem (ListT m) a)) => Eq (ListT m a) # |
Methods (==) :: ListT m a -> ListT m a -> Bool # (/=) :: ListT m a -> ListT m a -> Bool #
Ord (m (ListItem (ListT m) a)) => Ord (ListT m a) # |
Methods compare :: ListT m a -> ListT m a -> Ordering # (<) :: ListT m a -> ListT m a -> Bool # (<=) :: ListT m a -> ListT m a -> Bool # (>) :: ListT m a -> ListT m a -> Bool # (>=) :: ListT m a -> ListT m a -> Bool # max :: ListT m a -> ListT m a -> ListT m a # min :: ListT m a -> ListT m a -> ListT m a #
Read (m (ListItem (ListT m) a)) => Read (ListT m a) # |
Methods readsPrec :: Int -> ReadS (ListT m a) # readList :: ReadS [ListT m a] # readPrec :: ReadPrec (ListT m a) # readListPrec :: ReadPrec [ListT m a] #
Show (m (ListItem (ListT m) a)) => Show (ListT m a) # |
Methods showsPrec :: Int -> ListT m a -> ShowS # show :: ListT m a -> String # showList :: [ListT m a] -> ShowS #
Monad m => Monoid (ListT m a) # |
Methods mempty :: ListT m a # mappend :: ListT m a -> ListT m a -> ListT m a # mconcat :: [ListT m a] -> ListT m a #
type ItemM (ListT m) # |
type ItemM (ListT m) = m