We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 9a4953b commit 4650b6cCopy full SHA for 4650b6c
README.md
@@ -297,6 +297,13 @@ unless :: forall m. (Monad m) => Boolean -> m Unit -> m Unit
297
```
298
299
300
+#### `filterM`
301
+
302
+``` purescript
303
+filterM :: forall a m. (Monad m) => (a -> m Boolean) -> [a] -> m [a]
304
+```
305
306
307
308
## Module Control.MonadPlus
309
src/Control/Monad.purs
@@ -18,3 +18,12 @@ when false _ = return unit
18
unless :: forall m. (Monad m) => Boolean -> m Unit -> m Unit
19
unless false m = m
20
unless true _ = return unit
21
22
23
+filterM _ [] = return []
24
+filterM p (x:xs) = do
25
+ b <- p x
26
+ xs' <- filterM p xs
27
+ return $ if b
28
+ then x : xs'
29
+ else xs'
0 commit comments