summaryrefslogtreecommitdiff
path: root/core/variant/variant.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2020-11-09 14:34:49 +0100
committerGitHub <noreply@github.com>2020-11-09 14:34:49 +0100
commit01154f1ad20e7c6707ef1229394a4330eb4e31b7 (patch)
tree3a3195b3e39238c7c307b8d7e941a72871f60c0c /core/variant/variant.cpp
parenteda8f69c19ffaa219bdb0afe67dfb7df17a46d1c (diff)
parent221a2a17422dfbb7e0be5ca42fe56b91adb656e3 (diff)
Merge pull request #43403 from reduz/variant-constructor-refactor
Refactored variant constructor logic
Diffstat (limited to 'core/variant/variant.cpp')
-rw-r--r--core/variant/variant.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/core/variant/variant.cpp b/core/variant/variant.cpp
index 126420bd02..73916bbef9 100644
--- a/core/variant/variant.cpp
+++ b/core/variant/variant.cpp
@@ -1266,7 +1266,7 @@ void Variant::zero() {
}
}
-void Variant::clear() {
+void Variant::_clear_internal() {
switch (type) {
case STRING: {
reinterpret_cast<String *>(_data._mem)->~String();
@@ -1358,8 +1358,6 @@ void Variant::clear() {
default: {
} /* not needed */
}
-
- type = NIL;
}
Variant::operator signed int() const {
@@ -3519,3 +3517,16 @@ String vformat(const String &p_text, const Variant &p1, const Variant &p2, const
return fmt;
}
+
+void Variant::register_types() {
+ _register_variant_operators();
+ _register_variant_methods();
+ _register_variant_setters_getters();
+ _register_variant_constructors();
+}
+void Variant::unregister_types() {
+ _unregister_variant_operators();
+ _unregister_variant_methods();
+ _unregister_variant_setters_getters();
+ _unregister_variant_constructors();
+}