-- | @List@ functions with type limited to use @ListT@. -- This might come useful for type interference. -- -- Functions where the @List@ is an input type and not only the result type do not need special limited versions. module Control.Monad.Trans.List.Funcs ( iterateM, repeatM, repeat, fromList ) where import Control.Monad.Trans.List (ListT) import qualified Data.List.Class as ListFuncs import Prelude hiding (repeat) iterateM :: Monad m => (a -> m a) -> m a -> ListT m a iterateM = ListFuncs.iterateM repeatM :: Monad m => m a -> ListT m a repeatM = ListFuncs.repeatM repeat :: Monad m => a -> ListT m a repeat = ListFuncs.repeat fromList :: Monad m => [a] -> ListT m a fromList = ListFuncs.fromList