Procházet zdrojové kódy

Define the {de,}initialization functions in the bindings

The extension creators then don't need to create those just to redirect
to the bindings.
George Marques před 4 roky
rodič
revize
5615c92173
2 změnil soubory, kde provedl 11 přidání a 8 odebrání
  1. 11 0
      src/godot.cpp
  2. 0 8
      test/src/register_types.cpp

+ 11 - 0
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);
+}
+}

+ 0 - 8
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);
-}
 }