From bcd24674ec0a594882b276fd48fe70c6e3d7ec86 Mon Sep 17 00:00:00 2001 From: Tomasz Chojnacki Date: Thu, 6 Apr 2023 11:47:33 +0200 Subject: Finish day 11 --- aoc-2020-gleam/src/ext/mapx.gleam | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 aoc-2020-gleam/src/ext/mapx.gleam (limited to 'aoc-2020-gleam/src/ext/mapx.gleam') diff --git a/aoc-2020-gleam/src/ext/mapx.gleam b/aoc-2020-gleam/src/ext/mapx.gleam new file mode 100644 index 0000000..244c1ac --- /dev/null +++ b/aoc-2020-gleam/src/ext/mapx.gleam @@ -0,0 +1,16 @@ +import gleam/map.{Map} +import gleam/iterator.{Iterator} as iter + +pub fn from_iter(iterator: Iterator(#(k, v))) -> Map(k, v) { + iter.fold( + over: iterator, + from: map.new(), + with: fn(acc, cur) { map.insert(acc, cur.0, cur.1) }, + ) +} + +pub fn to_iter(map: Map(k, v)) -> Iterator(#(k, v)) { + map + |> map.to_list + |> iter.from_list +} -- cgit v1.2.3