Add an example for `Dictionary.merge()`, mention lack of recursion
(cherry picked from commit 0396e12a47
)
This commit is contained in:
parent
1aeff1a7a5
commit
95ca8e0365
|
@ -294,6 +294,42 @@
|
||||||
<param index="1" name="overwrite" type="bool" default="false" />
|
<param index="1" name="overwrite" type="bool" default="false" />
|
||||||
<description>
|
<description>
|
||||||
Adds entries from [param dictionary] to this dictionary. By default, duplicate keys are not copied over, unless [param overwrite] is [code]true[/code].
|
Adds entries from [param dictionary] to this dictionary. By default, duplicate keys are not copied over, unless [param overwrite] is [code]true[/code].
|
||||||
|
[codeblocks]
|
||||||
|
[gdscript]
|
||||||
|
var dict = { "item": "sword", "quantity": 2 }
|
||||||
|
var other_dict = { "quantity": 15, "color": "silver" }
|
||||||
|
|
||||||
|
# Overwriting of existing keys is disabled by default.
|
||||||
|
dict.merge(other_dict)
|
||||||
|
print(dict) # { "item": "sword", "quantity": 2, "color": "silver" }
|
||||||
|
|
||||||
|
# With overwriting of existing keys enabled.
|
||||||
|
dict.merge(other_dict, true)
|
||||||
|
print(dict) # { "item": "sword", "quantity": 15, "color": "silver" }
|
||||||
|
[/gdscript]
|
||||||
|
[csharp]
|
||||||
|
var dict = new Godot.Collections.Dictionary
|
||||||
|
{
|
||||||
|
["item"] = "sword",
|
||||||
|
["quantity"] = 2,
|
||||||
|
};
|
||||||
|
|
||||||
|
var otherDict = new Godot.Collections.Dictionary
|
||||||
|
{
|
||||||
|
["quantity"] = 15,
|
||||||
|
["color"] = "silver",
|
||||||
|
};
|
||||||
|
|
||||||
|
// Overwriting of existing keys is disabled by default.
|
||||||
|
dict.Merge(otherDict);
|
||||||
|
GD.Print(dict); // { "item": "sword", "quantity": 2, "color": "silver" }
|
||||||
|
|
||||||
|
// With overwriting of existing keys enabled.
|
||||||
|
dict.Merge(otherDict, true);
|
||||||
|
GD.Print(dict); // { "item": "sword", "quantity": 15, "color": "silver" }
|
||||||
|
[/csharp]
|
||||||
|
[/codeblocks]
|
||||||
|
[b]Note:[/b] [method merge] is [i]not[/i] recursive. Nested dictionaries are considered as keys that can be overwritten or not depending on the value of [param overwrite], but they will never be merged together.
|
||||||
</description>
|
</description>
|
||||||
</method>
|
</method>
|
||||||
<method name="size" qualifiers="const">
|
<method name="size" qualifiers="const">
|
||||||
|
|
Loading…
Reference in New Issue