aboutsummaryrefslogtreecommitdiff
path: root/src/gleam/set.gleam
diff options
context:
space:
mode:
Diffstat (limited to 'src/gleam/set.gleam')
-rw-r--r--src/gleam/set.gleam14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/gleam/set.gleam b/src/gleam/set.gleam
index 7b52064..a654200 100644
--- a/src/gleam/set.gleam
+++ b/src/gleam/set.gleam
@@ -73,3 +73,17 @@ pub fn contains(in set: Set(element), this member: element) -> Bool {
pub fn delete(from set: Set(element), this member: element) -> Set(element) {
Set(map: map.delete(set.map, member))
}
+
+/// Convert the set into a list of the contained elements.
+///
+/// The list has no specific ordering, any unintentional ordering may change in
+/// future versions of Gleam or Erlang.
+///
+/// ## Examples
+///
+/// > new() |> insert(2) |> to_list
+/// [2]
+///
+pub fn to_list(set: Set(element)) -> List(element) {
+ map.keys(set.map)
+}