generate compat
generate compat
Update ci.yml
Update binding_generator.py
generate compat
generate compat
lint python files
Update compat_generator.py
update docs
Update binding_generator.py
Update module_converter.py
also collect defines
Add module converter file that converts module based projects to godot_compat
Update ci.yml
update docs
Update compat_generator.py
lint python files
generate compat
generate compat
generate compat
generate compat
Update ci.yml
fix path issue when caling from outside
Update binding_generator.py
update to also take missing classes/structs
Update binding_generator.py
Generate godot compat for dual build
generate compat
generate compat
Update ci.yml
Update binding_generator.py
generate compat
generate compat
lint python files
Update compat_generator.py
update docs
Update binding_generator.py
Update module_converter.py
also collect defines
Add module converter file that converts module based projects to godot_compat
Update ci.yml
update docs
Update compat_generator.py
lint python files
generate compat
generate compat
generate compat
generate compat
Update ci.yml
fix path issue when caling from outside
Add support for build profiles.
Allow enabling or disabling specific classes (which will not be built).
Allow forwarding from `ClassDB` to `ClassDBSingleton` to support enumerations
update to also take missing classes/structs
Update binding_generator.py
update
update naming of files
add godot mappings.
update and run output_header_mapping.json
Update README.md
make godot_compat work without a file generated
fix the test
Update binding_generator.py
Update binding_generator.py
Update binding_generator.py
use files from include too
Update README.md
lint
lint
lint
Update CMakeLists.txt
update to use all. fix linting a bit
update wip
fix posix path
Update CMakeLists.txt
Update binding_generator.py
add using namespace godot; everywhere to includes
fix includes
Try fixes.
generate new include files 123
Update binding_generator.py
Update binding_generator.py
Update binding_generator.py
Update binding_generator.py
update
fix GODOT_MODULE_COMPAT
fix manual includes to match.
Update godot.hpp
Update color_names.inc.hpp
Rename __* to _gde_*
https://timsong-cpp.github.io/cppwp/n3337/global.nameshttps://en.cppreference.com/w/cpp/language/identifiers
Identifiers appearing as a token or preprocessing token (i.e., not in user-defined-string-literal like operator ""id) (since C++11) of one of the following forms are reserved:
- identifiers with a double underscore anywhere;
- identifiers that begin with an underscore followed by an uppercase letter;
- in the global namespace, identifiers that begin with an underscore.
Changes the `<godot/gdextension_interface.h>` include to simply
`<gdextension_interface.h>`.
Refactor and better document the SCons and CMake logic around setting
the paths to the header and API JSON file.
Non-exhaustive list of case-sensitive renames:
GDExtension -> GDNative
GDNATIVE -> GDEXTENSION
gdextension -> gdnative
ExtensionExtension -> Extension (for where there was GDNativeExtension)
EXTENSION_EXTENSION -> EXTENSION (for where there was GDNATIVE_EXTENSION)
gdnlib -> gdextension
gdn_interface -> gde_interface
gdni -> gde_interface
This makes sure custom constructors are always called on extension
classes. However, note that constructors should not take any parameters,
since Godot doesn't support that. Parameters are ignore in memnew macro.
Use memnew(MyClass()) instead of memnew(MyClass) since it now needs a
value instead of a class name. This macro calls MyClass::_new() (define
in GDCLASS macro) which ultimately calls Godot to create the object,
ensuring that both the Godot and the extension instances are created.
Non Godot classes (that don't derive godot::Object) are constructed as
usual an can have parameters.
memdelete is also changed for the same reason, as it needs to destroy
the Godot object as well, and that automatically frees the bound
extension instance.