-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | some tools for Monad -- -- ifM, whenM, unlessM, doWhile, doWhile_ and so on. @package yjtools @version 0.4 module Data.Function.Tools const2 :: a -> b -> c -> a applyWhen :: Bool -> (a -> a) -> a -> a apply2way :: (a -> b -> c) -> (d -> a) -> (d -> b) -> d -> c module Data.Tuple.Tools modifyFst :: (a -> b) -> (a, c) -> (b, c) modifySnd :: (a -> b) -> (c, a) -> (c, b) module Data.List.Tools mulLists :: [[a]] -> [[a]] defaultElem :: a -> [a] -> [a] module Control.Applicative.Utils (<.>) :: (Functor f) => (a -> b) -> (c -> f a) -> c -> f b module Control.Monad.Utils ifM :: (Monad m) => m Bool -> m a -> m a -> m a whenM :: (Monad m) => m Bool -> m () -> m () unlessM :: (Monad m) => m Bool -> m () -> m () doWhile_ :: (Monad m) => m Bool -> m () doWhile :: (Monad m) => a -> (a -> m (a, Bool)) -> m a for_ :: (Monad m) => a -> (a -> Bool) -> (a -> a) -> (a -> m b) -> m () for :: (Monad m) => a -> (a -> Bool) -> (a -> a) -> b -> (a -> b -> m b) -> m b