Commit Graph

165 Commits

Author SHA1 Message Date
David Snopek
54fe2f9891 Merge pull request #1445 from dsnopek/classdb-enum-issue
Allow forwarding from `ClassDB` to `ClassDBSingleton` to support enumerations
2024-04-30 09:30:01 -05:00
David Snopek
2cd3d39108 Merge pull request #1405 from dsnopek/fix-null-object-arguments
Correctly handle `Object *` arguments that were encoded as `nullptr`
2024-04-29 16:46:46 -05:00
David Snopek
ca46ef4d25 Give compile-time error if registering a class without its own _bind_methods() function 2024-04-24 14:49:26 -05:00
David Snopek
e23b117ac3 Merge pull request #1431 from pupil1337/fix-create-instance-func
Fix create instance func
2024-04-24 14:44:29 -05:00
David Snopek
d304f12dcd Merge pull request #1443 from Naros/property-method-dict-helpers
Implement to/from dict helpers for PropertyInfo/MethodInfo
2024-04-24 14:43:53 -05:00
David Snopek
61450b3e1b Merge pull request #1436 from AThousandShips/math_update
[Math] Add `is_finite` methods
2024-04-24 14:43:36 -05:00
David Snopek
e1b3b32db5 Allow forwarding from ClassDB to ClassDBSingleton to support enumerations 2024-04-23 13:47:36 -05:00
Chris Cranford
2a041b5240 Implement to/from dict helpers for PropertyInfo/MethodInfo 2024-04-20 18:50:34 -04:00
Chris Cranford
e160966163 Fix PropertyInfo to use hint/usage default constants 2024-04-16 07:24:48 -04:00
A Thousand Ships
d389171905 [Math] Add is_finite methods 2024-04-11 13:30:28 +02:00
pupil1337
1fa7a9cb19 Add static_assert() for register_class 2024-04-11 10:48:13 +08:00
David Snopek
37542dc2ec Correctly handle Object * arguments that were encoded as nullptr 2024-04-08 11:12:40 -05:00
A Thousand Ships
d055b575fb Fix incorrect utility call signature 2024-04-02 21:44:40 +02: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
efb46f7f82 Merge pull request #1407 from AThousandShips/flag_fix
Fix invalid `void` return in `BitField`
2024-03-11 12:43:12 -05:00
Thaddeus Crews
87f5fb0691 Enforce template syntax typename over class 2024-03-10 16:02:43 -05:00
Marc Gilleron
e607790647 Fix explicit namespaces in macros 2024-03-08 19:42:07 +00:00
A Thousand Ships
7ed8ef7221 Fix invalid void return in BitField 2024-03-08 13:32:28 +01:00
David Snopek
e55b792fea Merge pull request #1383 from bruvzg/memalign
[Core] Improve `CowData` and `Memory` metadata alignment.
2024-02-26 12:54:17 -06:00
David Snopek
fb884573ea Allow registering "runtime classes" 2024-02-13 08:55:25 -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
Allen Pestaluky
349b5a3146 Added newer Variant types to typed_array.hpp
This is a companion commit to the godot PR https://github.com/godotengine/godot/pull/87992 which fixes https://github.com/godotengine/godot/issues/87991
Also undefines typed array templates after use to match Godot's typed_array.h
2024-02-06 13:53:38 -05:00
bruvzg
b173a4d935 [Core] Improve CowData and Memory metadata alignment. 2024-02-05 19:26:45 +02:00
Chris Cranford
5f350e2572 Rework GDCLASS macro to allow pure virtual functions 2024-01-18 20:14:13 -05:00
A Thousand Ships
b77cb648c3 Fix expected argument count for call errors 2023-12-30 13:23:36 +01:00
David Snopek
4439a4a569 Merge pull request #1280 from dsnopek/callable-custom
Add `CallableCustom` that devs can use in their GDExtensions
2023-11-17 12:48:39 -06:00
bruvzg
29b34d92bb [iOS] Fix building as static library or xcframework, add iOS config and xcframework build script to the test project. 2023-11-09 20:01:59 +02:00
David Snopek
d33bd47219 Add CallableCustom that devs can use in their GDExtensions 2023-11-06 00:09:06 -06:00
David Snopek
a61cdc8860 Add protections against registering classes that didn't use GDCLASS() 2023-10-22 08:44:09 -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
df849651d9 Changes necessary for hot reload to work 2023-09-25 22:13:33 -05:00
David Snopek
c18c1916c3 Implement callable_mp() and callable_mp_static() 2023-09-21 15:17:50 -05:00
David Snopek
3a02feddc3 Update for addition of get_virtual_call_data_func and call_virtual_func to GDExtensionClassCreationInfo2 2023-09-20 12:15:31 -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
aa6867e6c9 Support _validate_property() 2023-09-12 13:21:16 -05:00
David Snopek
16ffb2795a Merge pull request #970 from Daylily-Zeleen/daylily-zeleen/register_unexposed_class
Implement register unexposed classes
2023-09-11 09:35:32 -05: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
Daylily-Zeleen
2d1f852baf Implement register unexposed class. 2023-09-04 00:59:10 +08:00
Markus Sauermann
c2d99fd519 Fix Object::notification order
For the notification-order to work correctly, it is necessary to
allow the `p_reversed` argument to be used within cpp.
This PR changes the necessary bindings.
2023-08-30 00:07:28 +02:00
David Snopek
3cd3f24150 Ensure that PtrToArg specializations for native structs are used 2023-08-15 17:54:11 -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
1d49bef096 Merge pull request #1184 from Zylann/fix_get_property_list_calling_parent
Don't call parent _get_property_list when a class doesn't define it (for internal binding).
2023-07-26 15:31:15 -05:00
Marc Gilleron
baf0b9e0f7 Don't call parent _get_property_list when a class doesn't define it.
Godot is already supposed to call _get_property_list of parent classes,
so this binding function must really only return procedural properties of
the class it belongs to, and not parent or child classes.
2023-07-26 20:12:25 +01:00
Mikael Hermansson
7d8cb7c155 Add support for indexed properties 2023-07-26 00:31:53 +02:00
Kehom
20be441026 Unregister custom classes in reverse registration order 2023-06-19 11:04:11 -03:00