|
@@ -225,6 +225,9 @@ class MethodBindVarArgT : public MethodBindVarArgBase<MethodBindVarArgT<T>, T, v
|
|
|
|
|
|
public:
|
|
|
virtual Variant call(Object *p_object, const Variant **p_args, int p_arg_count, Callable::CallError &r_error) const override {
|
|
|
+#ifdef TOOLS_ENABLED
|
|
|
+ ERR_FAIL_COND_V_MSG(p_object && p_object->is_extension_placeholder(), Variant(), vformat("Cannot call method bind '%s' on placeholder instance.", MethodBind::get_name()));
|
|
|
+#endif
|
|
|
(static_cast<T *>(p_object)->*MethodBindVarArgBase<MethodBindVarArgT<T>, T, void, false>::method)(p_args, p_arg_count, r_error);
|
|
|
return {};
|
|
|
}
|
|
@@ -261,6 +264,9 @@ public:
|
|
|
#pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
|
|
|
#endif
|
|
|
virtual Variant call(Object *p_object, const Variant **p_args, int p_arg_count, Callable::CallError &r_error) const override {
|
|
|
+#ifdef TOOLS_ENABLED
|
|
|
+ ERR_FAIL_COND_V_MSG(p_object && p_object->is_extension_placeholder(), Variant(), vformat("Cannot call method bind '%s' on placeholder instance.", MethodBind::get_name()));
|
|
|
+#endif
|
|
|
return (static_cast<T *>(p_object)->*MethodBindVarArgBase<MethodBindVarArgTR<T, R>, T, R, true>::method)(p_args, p_arg_count, r_error);
|
|
|
}
|
|
|
|
|
@@ -329,6 +335,9 @@ public:
|
|
|
|
|
|
#endif
|
|
|
virtual Variant call(Object *p_object, const Variant **p_args, int p_arg_count, Callable::CallError &r_error) const override {
|
|
|
+#ifdef TOOLS_ENABLED
|
|
|
+ ERR_FAIL_COND_V_MSG(p_object && p_object->is_extension_placeholder(), Variant(), vformat("Cannot call method bind '%s' on placeholder instance.", MethodBind::get_name()));
|
|
|
+#endif
|
|
|
#ifdef TYPED_METHOD_BIND
|
|
|
call_with_variant_args_dv(static_cast<T *>(p_object), method, p_args, p_arg_count, r_error, get_default_arguments());
|
|
|
#else
|
|
@@ -338,6 +347,9 @@ public:
|
|
|
}
|
|
|
|
|
|
virtual void validated_call(Object *p_object, const Variant **p_args, Variant *r_ret) const override {
|
|
|
+#ifdef TOOLS_ENABLED
|
|
|
+ ERR_FAIL_COND_MSG(p_object && p_object->is_extension_placeholder(), vformat("Cannot call method bind '%s' on placeholder instance.", MethodBind::get_name()));
|
|
|
+#endif
|
|
|
#ifdef TYPED_METHOD_BIND
|
|
|
call_with_validated_object_instance_args(static_cast<T *>(p_object), method, p_args);
|
|
|
#else
|
|
@@ -346,6 +358,9 @@ public:
|
|
|
}
|
|
|
|
|
|
virtual void ptrcall(Object *p_object, const void **p_args, void *r_ret) const override {
|
|
|
+#ifdef TOOLS_ENABLED
|
|
|
+ ERR_FAIL_COND_MSG(p_object && p_object->is_extension_placeholder(), vformat("Cannot call method bind '%s' on placeholder instance.", MethodBind::get_name()));
|
|
|
+#endif
|
|
|
#ifdef TYPED_METHOD_BIND
|
|
|
call_with_ptr_args<T, P...>(static_cast<T *>(p_object), method, p_args);
|
|
|
#else
|
|
@@ -404,6 +419,9 @@ public:
|
|
|
|
|
|
#endif
|
|
|
virtual Variant call(Object *p_object, const Variant **p_args, int p_arg_count, Callable::CallError &r_error) const override {
|
|
|
+#ifdef TOOLS_ENABLED
|
|
|
+ ERR_FAIL_COND_V_MSG(p_object && p_object->is_extension_placeholder(), Variant(), vformat("Cannot call method bind '%s' on placeholder instance.", MethodBind::get_name()));
|
|
|
+#endif
|
|
|
#ifdef TYPED_METHOD_BIND
|
|
|
call_with_variant_argsc_dv(static_cast<T *>(p_object), method, p_args, p_arg_count, r_error, get_default_arguments());
|
|
|
#else
|
|
@@ -413,6 +431,9 @@ public:
|
|
|
}
|
|
|
|
|
|
virtual void validated_call(Object *p_object, const Variant **p_args, Variant *r_ret) const override {
|
|
|
+#ifdef TOOLS_ENABLED
|
|
|
+ ERR_FAIL_COND_MSG(p_object && p_object->is_extension_placeholder(), vformat("Cannot call method bind '%s' on placeholder instance.", MethodBind::get_name()));
|
|
|
+#endif
|
|
|
#ifdef TYPED_METHOD_BIND
|
|
|
call_with_validated_object_instance_argsc(static_cast<T *>(p_object), method, p_args);
|
|
|
#else
|
|
@@ -421,6 +442,9 @@ public:
|
|
|
}
|
|
|
|
|
|
virtual void ptrcall(Object *p_object, const void **p_args, void *r_ret) const override {
|
|
|
+#ifdef TOOLS_ENABLED
|
|
|
+ ERR_FAIL_COND_MSG(p_object && p_object->is_extension_placeholder(), vformat("Cannot call method bind '%s' on placeholder instance.", MethodBind::get_name()));
|
|
|
+#endif
|
|
|
#ifdef TYPED_METHOD_BIND
|
|
|
call_with_ptr_argsc<T, P...>(static_cast<T *>(p_object), method, p_args);
|
|
|
#else
|
|
@@ -490,6 +514,9 @@ public:
|
|
|
|
|
|
virtual Variant call(Object *p_object, const Variant **p_args, int p_arg_count, Callable::CallError &r_error) const override {
|
|
|
Variant ret;
|
|
|
+#ifdef TOOLS_ENABLED
|
|
|
+ ERR_FAIL_COND_V_MSG(p_object && p_object->is_extension_placeholder(), ret, vformat("Cannot call method bind '%s' on placeholder instance.", MethodBind::get_name()));
|
|
|
+#endif
|
|
|
#ifdef TYPED_METHOD_BIND
|
|
|
call_with_variant_args_ret_dv(static_cast<T *>(p_object), method, p_args, p_arg_count, ret, r_error, get_default_arguments());
|
|
|
#else
|
|
@@ -499,6 +526,9 @@ public:
|
|
|
}
|
|
|
|
|
|
virtual void validated_call(Object *p_object, const Variant **p_args, Variant *r_ret) const override {
|
|
|
+#ifdef TOOLS_ENABLED
|
|
|
+ ERR_FAIL_COND_MSG(p_object && p_object->is_extension_placeholder(), vformat("Cannot call method bind '%s' on placeholder instance.", MethodBind::get_name()));
|
|
|
+#endif
|
|
|
#ifdef TYPED_METHOD_BIND
|
|
|
call_with_validated_object_instance_args_ret(static_cast<T *>(p_object), method, p_args, r_ret);
|
|
|
#else
|
|
@@ -507,6 +537,9 @@ public:
|
|
|
}
|
|
|
|
|
|
virtual void ptrcall(Object *p_object, const void **p_args, void *r_ret) const override {
|
|
|
+#ifdef TOOLS_ENABLED
|
|
|
+ ERR_FAIL_COND_MSG(p_object && p_object->is_extension_placeholder(), vformat("Cannot call method bind '%s' on placeholder instance.", MethodBind::get_name()));
|
|
|
+#endif
|
|
|
#ifdef TYPED_METHOD_BIND
|
|
|
call_with_ptr_args_ret<T, R, P...>(static_cast<T *>(p_object), method, p_args, r_ret);
|
|
|
#else
|
|
@@ -577,6 +610,9 @@ public:
|
|
|
|
|
|
virtual Variant call(Object *p_object, const Variant **p_args, int p_arg_count, Callable::CallError &r_error) const override {
|
|
|
Variant ret;
|
|
|
+#ifdef TOOLS_ENABLED
|
|
|
+ ERR_FAIL_COND_V_MSG(p_object && p_object->is_extension_placeholder(), ret, vformat("Cannot call method bind '%s' on placeholder instance.", MethodBind::get_name()));
|
|
|
+#endif
|
|
|
#ifdef TYPED_METHOD_BIND
|
|
|
call_with_variant_args_retc_dv(static_cast<T *>(p_object), method, p_args, p_arg_count, ret, r_error, get_default_arguments());
|
|
|
#else
|
|
@@ -586,6 +622,9 @@ public:
|
|
|
}
|
|
|
|
|
|
virtual void validated_call(Object *p_object, const Variant **p_args, Variant *r_ret) const override {
|
|
|
+#ifdef TOOLS_ENABLED
|
|
|
+ ERR_FAIL_COND_MSG(p_object && p_object->is_extension_placeholder(), vformat("Cannot call method bind '%s' on placeholder instance.", MethodBind::get_name()));
|
|
|
+#endif
|
|
|
#ifdef TYPED_METHOD_BIND
|
|
|
call_with_validated_object_instance_args_retc(static_cast<T *>(p_object), method, p_args, r_ret);
|
|
|
#else
|
|
@@ -594,6 +633,9 @@ public:
|
|
|
}
|
|
|
|
|
|
virtual void ptrcall(Object *p_object, const void **p_args, void *r_ret) const override {
|
|
|
+#ifdef TOOLS_ENABLED
|
|
|
+ ERR_FAIL_COND_MSG(p_object && p_object->is_extension_placeholder(), vformat("Cannot call method bind '%s' on placeholder instance.", MethodBind::get_name()));
|
|
|
+#endif
|
|
|
#ifdef TYPED_METHOD_BIND
|
|
|
call_with_ptr_args_retc<T, R, P...>(static_cast<T *>(p_object), method, p_args, r_ret);
|
|
|
#else
|