Hoogle Search
Within LTS Haskell 24.4 (ghc-9.10.2)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
mapM :: (Traversable t, Monad m) => (a -> m b) -> t a -> m (t b)prelude-compat Prelude2010 Map each element of a structure to a monadic action, evaluate these actions from left to right, and collect the results. For a version that ignores the results see mapM_.
Examples
mapM is literally a traverse with a type signature restricted to Monad. Its implementation may be more efficient due to additional power of Monad.mapM_ :: (Foldable t, Monad m) => (a -> m b) -> t a -> m ()prelude-compat Prelude2010 Map each element of a structure to a monadic action, evaluate these actions from left to right, and ignore the results. For a version that doesn't ignore the results see mapM. mapM_ is just like traverse_, but specialised to monadic actions.
mapBoth :: (a -> c) -> (b -> d) -> Either a b -> Either c drebase Rebase.Prelude The mapBoth function takes two functions and applies the first if iff the value takes the form Left _ and the second if the value takes the form Right _. Using Data.Bifunctor:
mapBoth = bimap
Using Control.Arrow:mapBoth = (+++)
>>> mapBoth (*2) (*3) (Left 4) Left 8
>>> mapBoth (*2) (*3) (Right 4) Right 12
mapCont :: (r -> r) -> Cont r a -> Cont r arebase Rebase.Prelude Apply a function to transform the result of a continuation-passing computation.
mapExcept :: (Either e a -> Either e' b) -> Except e a -> Except e' brebase Rebase.Prelude Map the unwrapped computation using the given function.
mapExceptT :: (m (Either e a) -> n (Either e' b)) -> ExceptT e m a -> ExceptT e' n brebase Rebase.Prelude Map the unwrapped computation using the given function.
runExceptT (mapExceptT f m) = f (runExceptT m)
mapMaybeT :: (m (Maybe a) -> n (Maybe b)) -> MaybeT m a -> MaybeT n brebase Rebase.Prelude Transform the computation inside a MaybeT.
mapReader :: (a -> b) -> Reader r a -> Reader r brebase Rebase.Prelude Transform the value returned by a Reader.
mapReaderT :: (m a -> n b) -> ReaderT r m a -> ReaderT r n brebase Rebase.Prelude Transform the computation inside a ReaderT.
runReaderT (mapReaderT f m) = f . runReaderT m
mapState :: ((a, s) -> (b, s)) -> State s a -> State s brebase Rebase.Prelude Map both the return value and final state of a computation using the given function.