Merge pull request #26130 from karroffel/gdnative-dictionary-fix
added godot_dictionary_get_with_default to GDNative
This commit is contained in:
commit
c700d714bb
3 changed files with 35 additions and 8 deletions
|
@ -155,12 +155,26 @@ godot_string GDAPI godot_dictionary_to_json(const godot_dictionary *p_self) {
|
|||
return raw_dest;
|
||||
}
|
||||
|
||||
// GDNative core 1.1
|
||||
|
||||
godot_bool GDAPI godot_dictionary_erase_with_return(godot_dictionary *p_self, const godot_variant *p_key) {
|
||||
Dictionary *self = (Dictionary *)p_self;
|
||||
const Variant *key = (const Variant *)p_key;
|
||||
return self->erase(*key);
|
||||
}
|
||||
|
||||
godot_variant GDAPI godot_dictionary_get_with_default(const godot_dictionary *p_self, const godot_variant *p_key, const godot_variant *p_default) {
|
||||
const Dictionary *self = (const Dictionary *)p_self;
|
||||
const Variant *key = (const Variant *)p_key;
|
||||
const Variant *def = (const Variant *)p_default;
|
||||
|
||||
godot_variant raw_dest;
|
||||
Variant *dest = (Variant *)&raw_dest;
|
||||
memnew_placement(dest, Variant(self->get(*key, *def)));
|
||||
|
||||
return raw_dest;
|
||||
}
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -106,6 +106,23 @@
|
|||
["const godot_real", "p_t"]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "godot_dictionary_get_with_default",
|
||||
"return_type": "godot_variant",
|
||||
"arguments": [
|
||||
["const godot_dictionary *", "p_self"],
|
||||
["const godot_variant *", "p_key"],
|
||||
["const godot_variant *", "p_default"]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "godot_dictionary_erase_with_return",
|
||||
"return_type": "bool",
|
||||
"arguments": [
|
||||
["godot_dictionary *", "p_self"],
|
||||
["const godot_variant *", "p_key"]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "godot_node_path_get_as_property_path",
|
||||
"return_type": "godot_node_path",
|
||||
|
@ -233,14 +250,6 @@
|
|||
["const godot_vector3 *", "p_scale"]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "godot_dictionary_erase_with_return",
|
||||
"return_type": "bool",
|
||||
"arguments": [
|
||||
["godot_dictionary *", "p_self"],
|
||||
["const godot_variant *", "p_key"]
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "godot_is_instance_valid",
|
||||
"return_type": "bool",
|
||||
|
|
|
@ -94,8 +94,12 @@ godot_bool GDAPI godot_dictionary_operator_equal(const godot_dictionary *p_self,
|
|||
|
||||
godot_string GDAPI godot_dictionary_to_json(const godot_dictionary *p_self);
|
||||
|
||||
// GDNative core 1.1
|
||||
|
||||
godot_bool GDAPI godot_dictionary_erase_with_return(godot_dictionary *p_self, const godot_variant *p_key);
|
||||
|
||||
godot_variant GDAPI godot_dictionary_get_with_default(const godot_dictionary *p_self, const godot_variant *p_key, const godot_variant *p_default);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue