summaryrefslogtreecommitdiffstats
path: root/core/variant/variant_setget.cpp
diff options
context:
space:
mode:
authorJordan Schidlowsky <jordan@winterpixel.com>2020-12-17 14:26:05 -0600
committerJordan Schidlowsky <jordan@noodlecake.com>2020-12-17 16:09:32 -0600
commit2d56e092765affde1904e76fe912329db0e9eab6 (patch)
treec3e918c0f993d75c4fbf13519eeb4b2db6bb8041 /core/variant/variant_setget.cpp
parent2c0d1c3b91a048c8aab6856c9821a98280ad82e6 (diff)
downloadredot-engine-2d56e092765affde1904e76fe912329db0e9eab6.tar.gz
packed*arrays are pass by ref now. support duplicate and update documentation
Diffstat (limited to 'core/variant/variant_setget.cpp')
-rw-r--r--core/variant/variant_setget.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/core/variant/variant_setget.cpp b/core/variant/variant_setget.cpp
index cee7465205..28cf8ef967 100644
--- a/core/variant/variant_setget.cpp
+++ b/core/variant/variant_setget.cpp
@@ -2023,6 +2023,24 @@ Variant Variant::duplicate(bool deep) const {
return operator Dictionary().duplicate(deep);
case ARRAY:
return operator Array().duplicate(deep);
+ case PACKED_BYTE_ARRAY:
+ return operator Vector<uint8_t>().duplicate();
+ case PACKED_INT32_ARRAY:
+ return operator Vector<int32_t>().duplicate();
+ case PACKED_INT64_ARRAY:
+ return operator Vector<int64_t>().duplicate();
+ case PACKED_FLOAT32_ARRAY:
+ return operator Vector<float>().duplicate();
+ case PACKED_FLOAT64_ARRAY:
+ return operator Vector<double>().duplicate();
+ case PACKED_STRING_ARRAY:
+ return operator Vector<String>().duplicate();
+ case PACKED_VECTOR2_ARRAY:
+ return operator Vector<Vector2>().duplicate();
+ case PACKED_VECTOR3_ARRAY:
+ return operator Vector<Vector3>().duplicate();
+ case PACKED_COLOR_ARRAY:
+ return operator Vector<Color>().duplicate();
default:
return *this;
}