packages feed

monad-loops 0.3.1.0 → 0.3.1.1

raw patch · 2 files changed

+4/−4 lines, 2 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Control.Monad.Loops: allM :: (Monad m) => (a -> m Bool) -> [a] -> m Bool
+ Control.Monad.Loops: allM :: Monad m => (a -> m Bool) -> [a] -> m Bool
- Control.Monad.Loops: allPM :: (Monad m) => [a -> m Bool] -> (a -> m Bool)
+ Control.Monad.Loops: allPM :: Monad m => [a -> m Bool] -> (a -> m Bool)
- Control.Monad.Loops: andM :: (Monad m) => [m Bool] -> m Bool
+ Control.Monad.Loops: andM :: Monad m => [m Bool] -> m Bool
- Control.Monad.Loops: anyM :: (Monad m) => (a -> m Bool) -> [a] -> m Bool
+ Control.Monad.Loops: anyM :: Monad m => (a -> m Bool) -> [a] -> m Bool
- Control.Monad.Loops: anyPM :: (Monad m) => [a -> m Bool] -> (a -> m Bool)
+ Control.Monad.Loops: anyPM :: Monad m => [a -> m Bool] -> (a -> m Bool)
- Control.Monad.Loops: concatM :: (Monad m) => [a -> m a] -> (a -> m a)
+ Control.Monad.Loops: concatM :: Monad m => [a -> m a] -> (a -> m a)
- Control.Monad.Loops: dropWhileM :: (Monad m) => (a -> m Bool) -> [a] -> m [a]
+ Control.Monad.Loops: dropWhileM :: Monad m => (a -> m Bool) -> [a] -> m [a]
- Control.Monad.Loops: firstM :: (Monad m) => (a -> m Bool) -> [a] -> m (Maybe a)
+ Control.Monad.Loops: firstM :: Monad m => (a -> m Bool) -> [a] -> m (Maybe a)
- Control.Monad.Loops: iterateUntil :: (Monad m) => (a -> Bool) -> m a -> m a
+ Control.Monad.Loops: iterateUntil :: Monad m => (a -> Bool) -> m a -> m a
- Control.Monad.Loops: iterateWhile :: (Monad m) => (a -> Bool) -> m a -> m a
+ Control.Monad.Loops: iterateWhile :: Monad m => (a -> Bool) -> m a -> m a
- Control.Monad.Loops: orM :: (Monad m) => [m Bool] -> m Bool
+ Control.Monad.Loops: orM :: Monad m => [m Bool] -> m Bool
- Control.Monad.Loops: trimM :: (Monad m) => (a -> m Bool) -> [a] -> m [a]
+ Control.Monad.Loops: trimM :: Monad m => (a -> m Bool) -> [a] -> m [a]
- Control.Monad.Loops: unfoldM :: (Monad m) => m (Maybe a) -> m [a]
+ Control.Monad.Loops: unfoldM :: Monad m => m (Maybe a) -> m [a]
- Control.Monad.Loops: unfoldM_ :: (Monad m) => m (Maybe a) -> m ()
+ Control.Monad.Loops: unfoldM_ :: Monad m => m (Maybe a) -> m ()
- Control.Monad.Loops: unfoldWhileM :: (Monad m) => (a -> Bool) -> m a -> m [a]
+ Control.Monad.Loops: unfoldWhileM :: Monad m => (a -> Bool) -> m a -> m [a]
- Control.Monad.Loops: unfoldrM :: (Monad m) => (a -> m (Maybe (b, a))) -> a -> m [b]
+ Control.Monad.Loops: unfoldrM :: Monad m => (a -> m (Maybe (b, a))) -> a -> m [b]
- Control.Monad.Loops: untilJust :: (Monad m) => m (Maybe a) -> m a
+ Control.Monad.Loops: untilJust :: Monad m => m (Maybe a) -> m a
- Control.Monad.Loops: untilM :: (Monad m) => m a -> m Bool -> m [a]
+ Control.Monad.Loops: untilM :: Monad m => m a -> m Bool -> m [a]
- Control.Monad.Loops: untilM_ :: (Monad m) => m a -> m Bool -> m ()
+ Control.Monad.Loops: untilM_ :: Monad m => m a -> m Bool -> m ()
- Control.Monad.Loops: whileJust :: (Monad m) => m (Maybe a) -> (a -> m b) -> m [b]
+ Control.Monad.Loops: whileJust :: Monad m => m (Maybe a) -> (a -> m b) -> m [b]
- Control.Monad.Loops: whileJust_ :: (Monad m) => m (Maybe a) -> (a -> m b) -> m ()
+ Control.Monad.Loops: whileJust_ :: Monad m => m (Maybe a) -> (a -> m b) -> m ()
- Control.Monad.Loops: whileM :: (Monad m) => m Bool -> m a -> m [a]
+ Control.Monad.Loops: whileM :: Monad m => m Bool -> m a -> m [a]
- Control.Monad.Loops: whileM_ :: (Monad m) => m Bool -> m a -> m ()
+ Control.Monad.Loops: whileM_ :: Monad m => m Bool -> m a -> m ()

Files

monad-loops.cabal view
@@ -1,5 +1,5 @@ name:                   monad-loops-version:                0.3.1.0+version:                0.3.1.1 stability:              provisional license:                BSD3 license-file:           LICENSE
src/Control/Monad/Loops.hs view
@@ -289,13 +289,13 @@ -- twist.  Rather than returning a list, it returns any MonadPlus type of your -- choice. unfoldrM' :: (Monad m, MonadPlus f) => (a -> m (Maybe (b,a))) -> a -> m (f b)-unfoldrM' f z = go-    where go = do+unfoldrM' f z = go z+    where go z = do             x <- f z             case x of                 Nothing         -> return mzero                 Just (x, z)     -> do-                        xs <- go+                        xs <- go z                         return (return x `mplus` xs)  {-# SPECIALIZE concatM :: [a -> IO a] -> (a -> IO a) #-}