aboutsummaryrefslogtreecommitdiff
path: root/aoc-2020-gleam/src/ext/setx.gleam
diff options
context:
space:
mode:
Diffstat (limited to 'aoc-2020-gleam/src/ext/setx.gleam')
-rw-r--r--aoc-2020-gleam/src/ext/setx.gleam8
1 files changed, 8 insertions, 0 deletions
diff --git a/aoc-2020-gleam/src/ext/setx.gleam b/aoc-2020-gleam/src/ext/setx.gleam
index 33ebbc3..68d185a 100644
--- a/aoc-2020-gleam/src/ext/setx.gleam
+++ b/aoc-2020-gleam/src/ext/setx.gleam
@@ -1,3 +1,4 @@
+import gleam/list
import gleam/set.{type Set}
import gleam/iterator as iter
import ext/iteratorx as iterx
@@ -8,3 +9,10 @@ pub fn count(set: Set(a), satisfying predicate: fn(a) -> Bool) -> Int {
|> iter.from_list
|> iterx.count(satisfying: predicate)
}
+
+pub fn map(set: Set(a), with fun: fn(a) -> b) -> Set(b) {
+ set
+ |> set.to_list
+ |> list.map(with: fun)
+ |> set.from_list
+}