aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/gleam/list.gleam12
1 files changed, 2 insertions, 10 deletions
diff --git a/src/gleam/list.gleam b/src/gleam/list.gleam
index 1fddc84..7df9862 100644
--- a/src/gleam/list.gleam
+++ b/src/gleam/list.gleam
@@ -635,11 +635,7 @@ pub fn find_map(
pub fn all(in list: List(a), satisfying predicate: fn(a) -> Bool) -> Bool {
case list {
[] -> True
- [x, ..rest] ->
- case predicate(x) {
- True -> all(rest, predicate)
- _ -> False
- }
+ [x, ..rest] -> predicate(x) && all(rest, predicate)
}
}
@@ -664,11 +660,7 @@ pub fn all(in list: List(a), satisfying predicate: fn(a) -> Bool) -> Bool {
pub fn any(in list: List(a), satisfying predicate: fn(a) -> Bool) -> Bool {
case list {
[] -> False
- [x, ..rest] ->
- case predicate(x) {
- False -> any(rest, predicate)
- _ -> True
- }
+ [x, ..rest] -> predicate(x) || any(rest, predicate)
}
}