summaryrefslogtreecommitdiffstats
path: root/core/extension/gdextension_interface.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2023-10-05 10:10:58 +0200
committerRémi Verschelde <rverschelde@gmail.com>2023-10-05 10:10:58 +0200
commitc7ed5d795ef396650e1e2853cf0d76cbdb1cb45e (patch)
treee575cc29c74eefdf5ccc071a536b2e014a690401 /core/extension/gdextension_interface.cpp
parent7c1abe8599fc22720216eae0e93bc6a5df6eb243 (diff)
parent0a246e9b549a03f6d8e8a6ef6d15964831a2df60 (diff)
downloadredot-engine-c7ed5d795ef396650e1e2853cf0d76cbdb1cb45e.tar.gz
Merge pull request #82799 from CedNaru/feature/expose_free_instance_binding
Expose `Object::free_instance_binding()` to GDExtension
Diffstat (limited to 'core/extension/gdextension_interface.cpp')
-rw-r--r--core/extension/gdextension_interface.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/core/extension/gdextension_interface.cpp b/core/extension/gdextension_interface.cpp
index 2b4a37b1e0..843f9ceecf 100644
--- a/core/extension/gdextension_interface.cpp
+++ b/core/extension/gdextension_interface.cpp
@@ -1152,6 +1152,11 @@ static void gdextension_object_set_instance_binding(GDExtensionObjectPtr p_objec
o->set_instance_binding(p_token, p_binding, p_callbacks);
}
+static void gdextension_object_free_instance_binding(GDExtensionObjectPtr p_object, void *p_token) {
+ Object *o = (Object *)p_object;
+ o->free_instance_binding(p_token);
+}
+
static void gdextension_object_set_instance(GDExtensionObjectPtr p_object, GDExtensionConstStringNamePtr p_classname, GDExtensionClassInstancePtr p_instance) {
const StringName classname = *reinterpret_cast<const StringName *>(p_classname);
Object *o = (Object *)p_object;
@@ -1491,6 +1496,7 @@ void gdextension_setup_interface() {
REGISTER_INTERFACE_FUNC(global_get_singleton);
REGISTER_INTERFACE_FUNC(object_get_instance_binding);
REGISTER_INTERFACE_FUNC(object_set_instance_binding);
+ REGISTER_INTERFACE_FUNC(object_free_instance_binding);
REGISTER_INTERFACE_FUNC(object_set_instance);
REGISTER_INTERFACE_FUNC(object_get_class_name);
REGISTER_INTERFACE_FUNC(object_cast_to);