aboutsummaryrefslogtreecommitdiff
path: root/aoc-2020-gleam/src/ext/iteratorx.gleam
blob: 456c1d125bab8bb0f15a7971b03cc619c8a97dc9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import gleam/iterator.{Iterator} as iter
import gleam/list

pub fn length(iterator: Iterator(a)) -> Int {
  iterator
  |> iter.to_list
  |> list.length
}

pub fn count(iterator: Iterator(a), satisfying predicate: fn(a) -> Bool) -> Int {
  iterator
  |> iter.filter(for: predicate)
  |> length
}