Add immutable collections hierarchy with runtime/compiler/docs/tests
This commit is contained in:
1 parent
9417f8f0cc
commit
8b5e6ee993
23 files changed
+1045
-32
No files matched your search
@@ -0,0 +1,36 @@
|
||||
# ImmutableMap built-in class
|
||||
|
||||
`ImmutableMap` is an immutable map of key-value pairs.
|
||||
It implements [Collection] and [Iterable] of [MapEntry].
|
||||
|
||||
## Creating
|
||||
|
||||
val a = ImmutableMap("a" => 1, "b" => 2)
|
||||
val b = Map("a" => 1, "b" => 2).toImmutable()
|
||||
val c = ["a" => 1, "b" => 2].toImmutableMap
|
||||
>>> void
|
||||
|
||||
## Converting
|
||||
|
||||
val i = ImmutableMap("a" => 1)
|
||||
val m = i.toMutable()
|
||||
m["a"] = 2
|
||||
assertEquals( 1, i["a"] )
|
||||
assertEquals( 2, m["a"] )
|
||||
>>> void
|
||||
|
||||
## Members
|
||||
|
||||
| name | meaning |
|
||||
|-----------------|------------------------------------------|
|
||||
| `size` | number of entries |
|
||||
| `[key]` | get value by key, or `null` if absent |
|
||||
| `getOrNull(key)`| same as `[key]` |
|
||||
| `keys` | list of keys |
|
||||
| `values` | list of values |
|
||||
| `+` | merge (rightmost wins), returns new immutable map |
|
||||
| `toMutable()` | create mutable copy |
|
||||
|
||||
[Collection]: Collection.md
|
||||
[Iterable]: Iterable.md
|
||||
[MapEntry]: Map.md
|
||||
Reference in new issue
Block a user