You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-12 13:20:55 +00:00
Implement varargs in Methodinfo
Variadic templates are an awful thing. Implements #62233 using them in MethodInfo so less changes are required.
This commit is contained in:
@@ -161,196 +161,6 @@ MethodInfo MethodInfo::from_dict(const Dictionary &p_dict) {
|
||||
return mi;
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo() :
|
||||
flags(METHOD_FLAG_NORMAL) {}
|
||||
|
||||
MethodInfo::MethodInfo(const String &p_name) :
|
||||
name(p_name),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(const String &p_name, const PropertyInfo &p_param1) :
|
||||
name(p_name),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
arguments.push_back(p_param1);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2) :
|
||||
name(p_name),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2, const PropertyInfo &p_param3) :
|
||||
name(p_name),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
arguments.push_back(p_param3);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2, const PropertyInfo &p_param3, const PropertyInfo &p_param4) :
|
||||
name(p_name),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
arguments.push_back(p_param3);
|
||||
arguments.push_back(p_param4);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2, const PropertyInfo &p_param3, const PropertyInfo &p_param4, const PropertyInfo &p_param5) :
|
||||
name(p_name),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
arguments.push_back(p_param3);
|
||||
arguments.push_back(p_param4);
|
||||
arguments.push_back(p_param5);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2, const PropertyInfo &p_param3, const PropertyInfo &p_param4, const PropertyInfo &p_param5, const PropertyInfo &p_param6) :
|
||||
name(p_name),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
arguments.push_back(p_param3);
|
||||
arguments.push_back(p_param4);
|
||||
arguments.push_back(p_param5);
|
||||
arguments.push_back(p_param6);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(Variant::Type ret) :
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
return_val.type = ret;
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(Variant::Type ret, const String &p_name) :
|
||||
name(p_name),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
return_val.type = ret;
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(Variant::Type ret, const String &p_name, const PropertyInfo &p_param1) :
|
||||
name(p_name),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
return_val.type = ret;
|
||||
arguments.push_back(p_param1);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(Variant::Type ret, const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2) :
|
||||
name(p_name),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
return_val.type = ret;
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(Variant::Type ret, const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2, const PropertyInfo &p_param3) :
|
||||
name(p_name),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
return_val.type = ret;
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
arguments.push_back(p_param3);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(Variant::Type ret, const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2, const PropertyInfo &p_param3, const PropertyInfo &p_param4) :
|
||||
name(p_name),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
return_val.type = ret;
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
arguments.push_back(p_param3);
|
||||
arguments.push_back(p_param4);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(Variant::Type ret, const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2, const PropertyInfo &p_param3, const PropertyInfo &p_param4, const PropertyInfo &p_param5) :
|
||||
name(p_name),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
return_val.type = ret;
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
arguments.push_back(p_param3);
|
||||
arguments.push_back(p_param4);
|
||||
arguments.push_back(p_param5);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(Variant::Type ret, const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2, const PropertyInfo &p_param3, const PropertyInfo &p_param4, const PropertyInfo &p_param5, const PropertyInfo &p_param6) :
|
||||
name(p_name),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
return_val.type = ret;
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
arguments.push_back(p_param3);
|
||||
arguments.push_back(p_param4);
|
||||
arguments.push_back(p_param5);
|
||||
arguments.push_back(p_param6);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(const PropertyInfo &p_ret, const String &p_name) :
|
||||
name(p_name),
|
||||
return_val(p_ret),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(const PropertyInfo &p_ret, const String &p_name, const PropertyInfo &p_param1) :
|
||||
name(p_name),
|
||||
return_val(p_ret),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
arguments.push_back(p_param1);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(const PropertyInfo &p_ret, const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2) :
|
||||
name(p_name),
|
||||
return_val(p_ret),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(const PropertyInfo &p_ret, const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2, const PropertyInfo &p_param3) :
|
||||
name(p_name),
|
||||
return_val(p_ret),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
arguments.push_back(p_param3);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(const PropertyInfo &p_ret, const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2, const PropertyInfo &p_param3, const PropertyInfo &p_param4) :
|
||||
name(p_name),
|
||||
return_val(p_ret),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
arguments.push_back(p_param3);
|
||||
arguments.push_back(p_param4);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(const PropertyInfo &p_ret, const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2, const PropertyInfo &p_param3, const PropertyInfo &p_param4, const PropertyInfo &p_param5) :
|
||||
name(p_name),
|
||||
return_val(p_ret),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
arguments.push_back(p_param3);
|
||||
arguments.push_back(p_param4);
|
||||
arguments.push_back(p_param5);
|
||||
}
|
||||
|
||||
MethodInfo::MethodInfo(const PropertyInfo &p_ret, const String &p_name, const PropertyInfo &p_param1, const PropertyInfo &p_param2, const PropertyInfo &p_param3, const PropertyInfo &p_param4, const PropertyInfo &p_param5, const PropertyInfo &p_param6) :
|
||||
name(p_name),
|
||||
return_val(p_ret),
|
||||
flags(METHOD_FLAG_NORMAL) {
|
||||
arguments.push_back(p_param1);
|
||||
arguments.push_back(p_param2);
|
||||
arguments.push_back(p_param3);
|
||||
arguments.push_back(p_param4);
|
||||
arguments.push_back(p_param5);
|
||||
arguments.push_back(p_param6);
|
||||
}
|
||||
|
||||
Object::Connection::operator Variant() const {
|
||||
Dictionary d;
|
||||
d["signal"] = signal;
|
||||
|
||||
Reference in New Issue
Block a user