Raul Santos
150e45071b
Avoid hardcoded type conversion for metadata
...
The engine uses the names `int` and `float` to refer to the 64-bit types, so in the bindings generator we have a hardcoded conversion for those types.
But this type conversion should not be used for metadata. Even though the underlying type should still be 64-bit for interop, metadata is meant to specify the correct type to expose. So if metadata says `float` it means the type is really meant to be a 32-bit `float` and not `double`. Other hardcoded type conversions (`int` and `Nil`) won't ever be metadata.
This change corrects the `float` type, to use the right type in the generated C++ code. Before we were always using `double` due to this type conversion.
(cherry picked from commit 4829199081
)
2024-09-03 16:34:41 -05:00
David Snopek
56cd3fd99e
Unexpose `UtilityFunctions::is_instance_valid()`
2024-07-01 12:29:28 -05:00
Thaddeus Crews
e0d363aad8
Integrate `.pre-commit-config.yaml`
2024-06-24 15:43:55 -05:00
A Thousand Ships
e7a13e3bf4
Fix some style details in generation
2024-06-18 17:46:54 +02:00
David Snopek
ed1e963a31
Merge pull request #1490 from AThousandShips/arg_name_fix
...
Enforce `p_` prefixes for arguments in binds
2024-06-18 10:43:27 -05:00
Fabio Alessandrelli
1186c488bd
Add support for build profiles.
...
Allow enabling or disabling specific classes (which will not be built).
2024-06-15 16:19:41 +02:00
A Thousand Ships
9e2771f918
Enforce `p_` prefixes for arguments in binds
2024-06-14 16:05:03 +02:00
David Snopek
ee9acbcf10
Merge pull request #1488 from AThousandShips/default_node_path
...
Add default argument processing for `NodePath`
2024-06-14 08:15:04 -05:00
David Snopek
64f1bc847a
Merge pull request #1485 from dsnopek/classdb-call-static-method
...
Fix vararg methods forwarded to the `ClassDB` singleton
2024-06-14 08:14:42 -05:00
A Thousand Ships
37e7a6da05
Add default argument processing for `NodePath`
2024-06-13 20:53:01 +02:00
David Snopek
6c4064125b
Merge pull request #1487 from AThousandShips/arg_default_fix
...
Fix generating default values for `StringName`
2024-06-13 13:49:54 -05:00
bruvzg
2360f84513
[TextServer, GDExtension] Fix building text servers as GDExtension, expose new/changed low-level methods to GDExtension API.
2024-06-13 18:57:24 +03:00
A Thousand Ships
6cd6c8923a
Fix generating default values for `StringName`
...
Cases other than `&""` were not processed correctly
2024-06-13 16:57:23 +02:00
David Snopek
e04a26b2bc
Fix vararg methods forwarded to the `ClassDB` singleton
2024-06-12 10:32:38 -05:00
David Snopek
88df025aa0
Clean up instance bindings for engine singletons to prevent crash
2024-05-10 19:51:31 -05:00
David Snopek
23178e81ff
Add support for `PackedVector4Array`
2024-05-06 14:30:04 -05:00
David Snopek
e1b3b32db5
Allow forwarding from `ClassDB` to `ClassDBSingleton` to support enumerations
2024-04-23 13:47:36 -05:00
David Snopek
44d78ec881
Merge pull request #1409 from Repiteo/class-to-typename
...
Enforce template syntax `typename` over `class`
2024-04-02 14:30:01 -05:00
David Snopek
a62f633ceb
Merge pull request #1379 from dsnopek/uninitialized-value-mk2
...
Avoid creating most objects that Godot is going to use placement new to initialize
2024-03-14 11:06:59 -05:00
David Snopek
e6b6df5893
Merge pull request #1399 from bruvzg/init_list
...
[Packed*Array] Add support for initializer lists.
2024-03-12 14:30:38 -05:00
David Snopek
12ebe4b180
Use explicit `::godot` namespace in gdvirtual.gen.inc
2024-03-12 13:06:57 -05:00
Thaddeus Crews
87f5fb0691
Enforce template syntax `typename` over `class`
2024-03-10 16:02:43 -05:00
A Thousand Ships
fc986c2d12
Fix crash on virtual method calls
2024-03-05 15:30:59 +01:00
bruvzg
8c98a90f32
[Packed*Array] Add support for initializer lists.
2024-03-03 12:50:53 +02:00
David Snopek
c4fde852e6
Avoid creating most objects that Godot is going to use placement new to initialize
2024-02-26 10:36:16 -06:00
David Snopek
5fcc43e54d
Merge pull request #1377 from dsnopek/gdextension-register-virtual-method
...
Allow GDExtensions to register virtual methods and call them on scripts (godot-cpp support)
2024-02-12 18:43:12 -06:00
David Snopek
9a13efa0e3
Merge pull request #1363 from Daylily-Zeleen/daylily-zeleen/fix_object_return_value_of_builtin_types_methods
...
Fix object return value of builtin types' methods.
2024-02-12 14:33:20 -06:00
David Snopek
8fbb7cf795
Allow GDExtensions to register virtual methods and call them on scripts
2024-02-12 13:30:07 -06:00
DaylilyZeleen
6a3753c076
Fix object return value of builtin types' methods.
2024-02-13 03:20:02 +08:00
David Snopek
0145e900f3
Merge pull request #1357 from bruvzg/cpp_64
...
Switch to 64-bit ints.
2024-01-19 12:15:55 -06:00
Rémi Verschelde
64529361b4
Merge pull request #1351 from Daylily-Zeleen/daylily-zeleen/remove_namespace_in_global_constants_binding
...
Remove "godot" namespace when binding global constants.
2024-01-11 13:10:51 +01:00
bruvzg
59a5a8b104
Switch to 64-bit ints.
2024-01-10 15:36:36 +02:00
Daylily-Zeleen
bd40a94424
Remove "godot" namespace when binding global constants.
2024-01-07 15:24:02 +08:00
A Thousand Ships
f037a697eb
Add missing `OP_POWER` operator to `Variant`
2024-01-06 21:12:52 +01:00
Mikael Hermansson
943d1c8cdf
Change bit field enums to use `uint64_t` as underlying type
2023-11-28 01:03:41 +01:00
Rémi Verschelde
4fed88afcf
Merge pull request #1307 from LAK132/master
...
Fix file list issues when trying to build with meson via cmake
2023-11-24 12:35:29 +01:00
LAK132
39c139c814
Fix file list issues when trying to build with meson via cmake
2023-11-11 23:29:33 +10:30
David Snopek
d33bd47219
Add `CallableCustom` that devs can use in their GDExtensions
2023-11-06 00:09:06 -06:00
David Snopek
64eac01d04
Merge pull request #1266 from dsnopek/automatic-engine-class-registration
...
Automatically register only engine classes whose header has been included
2023-10-16 10:47:06 -05:00
David Snopek
b507b3e591
Automatically register only engine classes whose header has been included
2023-10-16 10:19:11 -05:00
David Snopek
3d814f9e4a
Use the new `string_name_new_with_latin1_chars` function to improve StringName construction performance
2023-10-09 16:59:29 -05:00
David Snopek
b1fd1b65fd
Merge pull request #1242 from AThousandShips/null_check
...
Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-09-20 07:32:14 -05:00
David Snopek
0d6de7a80e
Merge pull request #1164 from dsnopek/classdb-singleton-alternate
...
Add static methods to `ClassDB` for the methods bound to the `ClassDB` singleton
2023-09-19 10:33:15 -05:00
A Thousand Ships
1e5767693e
Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-09-13 14:34:04 +02:00
David Snopek
5cdc2fc099
Merge pull request #1214 from dsnopek/ptrtoarg-native-struct
...
Ensure that PtrToArg specializations for native structs are used
2023-09-08 10:12:23 -05:00
David Snopek
8990d5a40e
Merge pull request #1091 from Daylily-Zeleen/daylily-zeleen/implement_builtin_classes_vararg_methods
...
Implement vararg methods of builtin classes.
2023-09-02 08:04:29 -05:00
David Snopek
3cd3f24150
Ensure that PtrToArg specializations for native structs are used
2023-08-15 17:54:11 -05:00
David Snopek
5eebc6b20c
Merge pull request #1193 from Zylann/version_header
...
Added generated version header
2023-08-11 10:33:49 -05:00
David Snopek
6f913563d8
Add static methods to `ClassDB` for the methods bound to the `ClassDB` singleton
2023-07-31 16:04:27 -05:00
David Snopek
8bc1c1dbeb
Implement `String::resize()`
2023-07-31 15:14:10 -05:00