Maps
size
fun size() > int
Returns: Number of elements in the map
remove
fun remove(key: K) > V?
Remove element from the map
- `key``: Key of element to remove
Returns: Removed element or null if nothing was under key
keys
fun keys() > [K]
Returns: Return list of the map keys
values
fun values() > [V]
Returns: Return list of the map values
cloneMutable
fun cloneMutable() > mut {K, V}
Returns: A mutable clone of the map
cloneImmutable
fun cloneImmutable() > {K, V}
Returns: An immutable clone of the map
reduce
fun reduce::<T>(callback: fun (key: K, value: V, accumulator: T) > T, initial: T) > T
Reduce map to value of type T by running callback with accumulator being the value being built.
callback: Ran for each elementinitial: Initial value
Returns: Reduced value
filter
fun filter(callback: fun (key: K, value: V) > bool) > {K: V}
Filter map keeping element for which callback returns true.
callback: Ran for each element
Returns: Filtered map
forEach
fun forEach(callback: fun (key: K, value: V) > void) > void
Runs callback for each element of the map.
callback: Ran for each element
map
fun map::<A, B>(callback: fun (key: K, value: V) > obj{ key: A, value: B }) > {A: B}
Transform map to new map of target type by running callback for each element of the map.
callback: Ran for each element
Returns: New map of key type A and value type B
sort
fun sort(callback: fun (left: K, right: K) > bool) > {K: V}
Stable in-place sort. O(n) best case, O(n*log(n)) worst case and average case.
callback: Used to compare elements
Returns: The map now sorted
diff
fun diff(other: {K: V}) > {K: V}
Returns elements of the map no present in other.
other: Other map of the same type
Returns: Difference with other
intersect
fun intersect(other: {K: V}) > {K: V}
Returns elements present in both current map and other.
other: Other map of the same type
Returns: Intersection with other
