summaryrefslogtreecommitdiffstats
path: root/core/extension/gdextension_interface.h
diff options
context:
space:
mode:
authorJuan Linietsky <reduzio@gmail.com>2023-04-25 00:21:32 +0200
committerJuan Linietsky <reduzio@gmail.com>2023-04-30 20:01:26 +0200
commit1c93606e470f0cad5f14af104ccb89a95a89931c (patch)
treefad6e8c9e15c3a3a211d4b2fff98a4e81a5ae2ca /core/extension/gdextension_interface.h
parent14c582bca81046fdde35e16088ddfd5df0136d56 (diff)
downloadredot-engine-1c93606e470f0cad5f14af104ccb89a95a89931c.tar.gz
Add ValidatedCall to MethodBind
* This should optimize GDScript function calling _enormously_. * It also should simplify the GDScript VM considerably. NOTE: GDExtension calling performance has most likely been affected until going via ptrcall is fixed.
Diffstat (limited to 'core/extension/gdextension_interface.h')
-rw-r--r--core/extension/gdextension_interface.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/core/extension/gdextension_interface.h b/core/extension/gdextension_interface.h
index f323b2aa53..f1412d667f 100644
--- a/core/extension/gdextension_interface.h
+++ b/core/extension/gdextension_interface.h
@@ -295,6 +295,7 @@ typedef enum {
} GDExtensionClassMethodArgumentMetadata;
typedef void (*GDExtensionClassMethodCall)(void *method_userdata, GDExtensionClassInstancePtr p_instance, const GDExtensionConstVariantPtr *p_args, GDExtensionInt p_argument_count, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error);
+typedef void (*GDExtensionClassMethodValidatedCall)(void *method_userdata, GDExtensionClassInstancePtr p_instance, const GDExtensionConstVariantPtr *p_args, GDExtensionVariantPtr r_return);
typedef void (*GDExtensionClassMethodPtrCall)(void *method_userdata, GDExtensionClassInstancePtr p_instance, const GDExtensionConstTypePtr *p_args, GDExtensionTypePtr r_ret);
typedef struct {