diff options
| author | danielytics <danielytics@users.noreply.github.com> | 2018-03-07 10:27:34 +0000 |
|---|---|---|
| committer | danielytics <danielytics@users.noreply.github.com> | 2018-03-07 10:27:34 +0000 |
| commit | 01db553c49345b683ff9da3283bc92a8c2933af2 (patch) | |
| tree | a8903fdf5e01999ee15065176bb6048d54a0b35d /include | |
| parent | c7b03c4132f9be5846141fb101f8f89522eb8efa (diff) | |
| download | redot-cpp-01db553c49345b683ff9da3283bc92a8c2933af2.tar.gz | |
adds Array::make and Dictionary::make static methods and has variadic template functions use those
Diffstat (limited to 'include')
| -rw-r--r-- | include/core/Array.hpp | 6 | ||||
| -rw-r--r-- | include/core/Dictionary.hpp | 5 | ||||
| -rw-r--r-- | include/core/Godot.hpp | 2 |
3 files changed, 12 insertions, 1 deletions
diff --git a/include/core/Array.hpp b/include/core/Array.hpp index 2320568..ead3ba3 100644 --- a/include/core/Array.hpp +++ b/include/core/Array.hpp @@ -3,6 +3,7 @@ #include <gdnative/array.h> +#include "Defs.hpp" #include "String.hpp" namespace godot { @@ -39,6 +40,11 @@ public: Array(const PoolColorArray& a); + template <class... Args> + static Array make(Args... args) { + return helpers::append_all(Array(), args...); + } + Variant& operator [](const int idx); Variant operator [](const int idx) const; diff --git a/include/core/Dictionary.hpp b/include/core/Dictionary.hpp index ec496af..613d6ce 100644 --- a/include/core/Dictionary.hpp +++ b/include/core/Dictionary.hpp @@ -16,6 +16,11 @@ public: Dictionary(const Dictionary & other); Dictionary & operator=(const Dictionary & other); + template <class... Args> + static Dictionary make(Args... args) { + return helpers::add_all(Dictionary(), args...); + } + void clear(); bool empty() const; diff --git a/include/core/Godot.hpp b/include/core/Godot.hpp index 8c463b6..01bee09 100644 --- a/include/core/Godot.hpp +++ b/include/core/Godot.hpp @@ -487,7 +487,7 @@ void register_signal(String name, Dictionary args = Dictionary()) template<class T, class... Args> void register_signal(String name, Args... varargs) { - register_signal<T>(name, helpers::add_all(Dictionary(), varargs...)); + register_signal<T>(name, Dictionary::make(varargs...)); } } |
