aboutsummaryrefslogtreecommitdiff
path: root/aoc-2020-gleam/src/ext/dictx.gleam
blob: 97b57b837d16c819465b36138784286f762d1d37 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import gleam/dict.{type Dict}
import gleam/iterator.{type Iterator} as iter

pub fn from_iter(iterator: Iterator(#(k, v))) -> Dict(k, v) {
  iter.fold(over: iterator, from: dict.new(), with: fn(acc, cur) {
    dict.insert(acc, cur.0, cur.1)
  })
}

pub fn to_iter(map: Dict(k, v)) -> Iterator(#(k, v)) {
  map
  |> dict.to_list
  |> iter.from_list
}