summaryrefslogtreecommitdiffstats
path: root/include/godot_cpp/variant
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2023-01-19 13:55:24 +0100
committerRémi Verschelde <rverschelde@gmail.com>2023-01-19 13:55:24 +0100
commit07e2e20f7b3fb228cea0f64ed7525b869759ebb9 (patch)
treec5dea42303f6c3305c559b3fd7c9dbf7bb1127a8 /include/godot_cpp/variant
parent04731d2b78b29c847fbf380db3a2ede97a222422 (diff)
parentabca497b7223eed94ae4cbd65119ddfce7941027 (diff)
downloadredot-cpp-07e2e20f7b3fb228cea0f64ed7525b869759ebb9.tar.gz
Merge pull request #939 from bruvzg/gde_low_level_funcs_cpp
Expose some low level functions and String operators.
Diffstat (limited to 'include/godot_cpp/variant')
-rw-r--r--include/godot_cpp/variant/variant.hpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/godot_cpp/variant/variant.hpp b/include/godot_cpp/variant/variant.hpp
index b131d74..06ba75f 100644
--- a/include/godot_cpp/variant/variant.hpp
+++ b/include/godot_cpp/variant/variant.hpp
@@ -322,6 +322,18 @@ struct VariantComparator {
static _FORCE_INLINE_ bool compare(const Variant &p_lhs, const Variant &p_rhs) { return p_lhs.hash_compare(p_rhs); }
};
+template <typename... VarArgs>
+String vformat(const String &p_text, const VarArgs... p_args) {
+ Variant args[sizeof...(p_args) + 1] = { p_args..., Variant() }; // +1 makes sure zero sized arrays are also supported.
+ Array args_array;
+ args_array.resize(sizeof...(p_args));
+ for (uint32_t i = 0; i < sizeof...(p_args); i++) {
+ args_array[i] = args[i];
+ }
+
+ return p_text % args_array;
+}
+
} // namespace godot
#endif // GODOT_VARIANT_HPP