From 1147fa5c1976663f4f4e08911599d348f5587b76 Mon Sep 17 00:00:00 2001 From: Fabio Alessandrelli Date: Thu, 22 Jul 2021 22:37:17 +0200 Subject: Make Object "meta" functions take StringName. The various get_meta, set_meta, has_meta, get_meta_list, remove_meta functions now uses StringName, allowing further optimizations via the SNAME macro when used from C++ (this PR does not change the various usage though). --- core/object/object.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'core/object/object.cpp') diff --git a/core/object/object.cpp b/core/object/object.cpp index 0644012318..66a4d17b7b 100644 --- a/core/object/object.cpp +++ b/core/object/object.cpp @@ -922,11 +922,11 @@ Variant Object::get_script() const { return script; } -bool Object::has_meta(const String &p_name) const { +bool Object::has_meta(const StringName &p_name) const { return metadata.has(p_name); } -void Object::set_meta(const String &p_name, const Variant &p_value) { +void Object::set_meta(const StringName &p_name, const Variant &p_value) { if (p_value.get_type() == Variant::NIL) { metadata.erase(p_name); return; @@ -935,12 +935,12 @@ void Object::set_meta(const String &p_name, const Variant &p_value) { metadata[p_name] = p_value; } -Variant Object::get_meta(const String &p_name) const { +Variant Object::get_meta(const StringName &p_name) const { ERR_FAIL_COND_V_MSG(!metadata.has(p_name), Variant(), "The object does not have any 'meta' values with the key '" + p_name + "'."); return metadata[p_name]; } -void Object::remove_meta(const String &p_name) { +void Object::remove_meta(const StringName &p_name) { metadata.erase(p_name); } @@ -964,8 +964,8 @@ Array Object::_get_method_list_bind() const { return ret; } -Vector Object::_get_meta_list_bind() const { - Vector _metaret; +Vector Object::_get_meta_list_bind() const { + Vector _metaret; List keys; metadata.get_key_list(&keys); @@ -976,7 +976,7 @@ Vector Object::_get_meta_list_bind() const { return _metaret; } -void Object::get_meta_list(List *p_list) const { +void Object::get_meta_list(List *p_list) const { List keys; metadata.get_key_list(&keys); for (List::Element *E = keys.front(); E; E = E->next()) { -- cgit v1.2.3