From 5615c921738f55c92a9d23da1f27f294afde97f6 Mon Sep 17 00:00:00 2001 From: George Marques Date: Thu, 19 Aug 2021 20:18:21 -0300 Subject: [PATCH] Define the {de,}initialization functions in the bindings The extension creators then don't need to create those just to redirect to the bindings. --- src/godot.cpp | 11 +++++++++++ test/src/register_types.cpp | 8 -------- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/godot.cpp b/src/godot.cpp index 3a1ee61..9f10977 100644 --- a/src/godot.cpp +++ b/src/godot.cpp @@ -80,3 +80,14 @@ void GDExtensionBinding::free_instance_callback(void *p_token, void *p_instance, } } // namespace godot + +extern "C" { + +void GDN_EXPORT initialize_level(void *userdata, GDNativeInitializationLevel p_level) { + godot::GDExtensionBinding::initialize_level(userdata, p_level); +} + +void GDN_EXPORT deinitialize_level(void *userdata, GDNativeInitializationLevel p_level) { + godot::GDExtensionBinding::deinitialize_level(userdata, p_level); +} +} diff --git a/test/src/register_types.cpp b/test/src/register_types.cpp index 78fc2aa..c68e4b5 100644 --- a/test/src/register_types.cpp +++ b/test/src/register_types.cpp @@ -29,12 +29,4 @@ GDNativeBool GDN_EXPORT example_library_init(const GDNativeInterface *p_interfac return result; } - -void GDN_EXPORT initialize_level(void *userdata, GDNativeInitializationLevel p_level) { - godot::GDExtensionBinding::initialize_level(userdata, p_level); -} - -void GDN_EXPORT deinitialize_level(void *userdata, GDNativeInitializationLevel p_level) { - godot::GDExtensionBinding::deinitialize_level(userdata, p_level); -} }