Merge pull request #108118 from YYF233333/varray_and_vformat

Simplify `varray`
This commit is contained in:
Thaddeus Crews 2025-09-18 12:42:25 -05:00
commit d90d8afa5a
No known key found for this signature in database
GPG key ID: 8C6E5FEB5FC03CCC

View file

@ -873,25 +873,9 @@ public:
} }
}; };
//typedef Dictionary Dictionary; no
//typedef Array Array;
template <typename... VarArgs> template <typename... VarArgs>
Vector<Variant> varray(VarArgs... p_args) { Vector<Variant> varray(VarArgs... p_args) {
Vector<Variant> v; return Vector<Variant>{ p_args... };
Variant args[sizeof...(p_args) + 1] = { p_args..., Variant() }; // +1 makes sure zero sized arrays are also supported.
uint32_t argc = sizeof...(p_args);
if (argc > 0) {
v.resize(argc);
Variant *vw = v.ptrw();
for (uint32_t i = 0; i < argc; i++) {
vw[i] = args[i];
}
}
return v;
} }
struct VariantHasher { struct VariantHasher {