David Snopek
acee69a3f6
Allow forwarding from `ClassDB` to `ClassDBSingleton` to support enumerations
...
(cherry picked from commit e1b3b32db5
)
2024-05-17 16:35:22 -05:00
David Snopek
ddfcca62a8
Correctly handle `Object *` arguments that were encoded as `nullptr`
...
(cherry picked from commit 37542dc2ec
)
2024-05-17 16:34:41 -05:00
David Snopek
8aef77a64d
Give compile-time error if registering a class without its own `_bind_methods()` function
...
(cherry picked from commit ca46ef4d25
)
2024-05-17 16:33:38 -05:00
pupil1337
897280444b
Add static_assert() for register_class
...
(cherry picked from commit 1fa7a9cb19
)
2024-05-17 16:32:54 -05:00
A Thousand Ships
3d814f6e87
[Math] Add `is_finite` methods
...
(cherry picked from commit d389171905
)
2024-05-17 16:32:05 -05:00
Chris Cranford
8f8ea90088
Implement to/from dict helpers for PropertyInfo/MethodInfo
...
(cherry picked from commit 2a041b5240
)
2024-05-17 16:30:54 -05:00
David Snopek
9afbdb9cf6
Backport miscellaneous changes that can't be cherry-picked
2024-05-08 16:49:18 -05:00
Chris Cranford
77f1d228cd
Fix PropertyInfo to use hint/usage default constants
...
(cherry picked from commit e160966163
)
2024-04-17 11:09:24 -05:00
A Thousand Ships
f8477fb9f2
Fix incorrect utility call signature
...
(cherry picked from commit d055b575fb
)
2024-04-08 11:50:07 -05:00
Thaddeus Crews
7473b984cb
Enforce template syntax `typename` over `class`
...
(cherry picked from commit 87f5fb0691
)
2024-04-08 11:49:37 -05:00
David Snopek
98ad839827
Avoid creating most objects that Godot is going to use placement new to initialize
...
(cherry picked from commit c4fde852e6
)
2024-04-08 11:45:25 -05:00
A Thousand Ships
f002ca18c7
Fix invalid `void` return in `BitField`
...
(cherry picked from commit 7ed8ef7221
)
2024-03-11 12:51:07 -05:00
Marc Gilleron
3fe7c2e87b
Fix explicit namespaces in macros
...
(cherry picked from commit e607790647
)
2024-03-11 12:50:56 -05:00
David Snopek
7ddd278dea
Fix _notification with parent and child classes
...
(cherry picked from commit 23c010900c
)
2024-03-11 12:50:43 -05:00
bruvzg
cae4bf58ac
[Core] Improve `CowData` and `Memory` metadata alignment.
...
(cherry picked from commit b173a4d935
)
2024-03-11 12:47:09 -05:00
DaylilyZeleen
dc19986497
Fix object return value of builtin types' methods.
...
(cherry picked from commit 6a3753c076
)
2024-03-11 12:46:39 -05:00
bruvzg
c2d4ccd592
Switch to 64-bit ints.
...
(cherry picked from commit 59a5a8b104
)
2024-03-11 12:46:27 -05:00
Chris Cranford
dc76664cea
Rework GDCLASS macro to allow pure virtual functions
...
(cherry picked from commit 5f350e2572
)
2024-01-22 15:30:04 -06:00
A Thousand Ships
97214ecd7a
Fix `AABB.encloses` failing on shared upper bound
...
(cherry picked from commit 3943e41d2f
)
2024-01-22 15:29:53 -06:00
A Thousand Ships
c0b2d85ffc
Add missing `OP_POWER` operator to `Variant`
...
(cherry picked from commit f037a697eb
)
2024-01-22 15:29:27 -06:00
A Thousand Ships
62eed50524
Fix expected argument count for call errors
...
(cherry picked from commit b77cb648c3
)
2024-01-22 15:29:18 -06:00
Aaron Franke
0472b6bdd4
Add PackedRealArray as an alias for PackedFloat(32/64)Array
...
(cherry picked from commit 646c71c277
)
2024-01-22 15:28:46 -06:00
bruvzg
adc9def046
[iOS] Fix initialisation/termination of multiple statically linked extensions.
2023-11-23 13:38:20 +02:00
David Snopek
f426b12b5b
Fix comparison of `Callable`s from callable_mp() of the same method
2023-11-17 12:49:53 -06: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
David Snopek
c4b7b08c91
Merge pull request #1298 from Repiteo/int-to-variant-fix
...
Add missing int→Variant conversions
2023-11-15 09:07:48 -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
Thaddeus Crews
bcac96c8c2
Add missing int→Variant conversions
2023-11-08 09:45:53 -06:00
David Snopek
d33bd47219
Add `CallableCustom` that devs can use in their GDExtensions
2023-11-06 00:09:06 -06:00
Thaddeus Crews
6eb5d450bd
GDCLASS synced by ending with "private:"
...
• Matches implementation used by modules and godot itself
• Apply same to GDEXTENSION_CLASS, setup with same diff-friendly spacers as GDCLASS
2023-11-01 12:44:14 -05:00
David Snopek
a61cdc8860
Add protections against registering classes that didn't use GDCLASS()
2023-10-22 08:44:09 -05:00
Martin Capitanio
a926b96103
clang: Add CallableCustomMethodPointerBase virtual destructor
...
Fixes #1272
+ clang++ (debian v16/v17) warning:
destructor called on
'godot::CallableCustomMethodPointerBase' that is abstract but has non-virtual destructor
[-Wdelete-abstract-non-virtual-dtor]
2023-10-19 09:37:11 +02: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
Rémi Verschelde
4f0eb2f520
Merge pull request #1263 from dsnopek/string-name-new
...
Use the new `string_name_new_with_latin1_chars` function to improve StringName construction performance
2023-10-12 18:08:09 +02:00
Mikael Hermansson
6e05b978b8
Declare explicit specializations for `CharStringT`
2023-10-12 16:00:48 +02: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
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
4314f91b7d
Merge pull request #1238 from dsnopek/variant-call-callp
...
Fix variant call compiler error (alternate)
2023-09-21 15:07:05 -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
a3dfbbde85
Merge pull request #1245 from AThousandShips/alloc_fix
...
Fix allocation size overflow check in `CowData`
2023-09-20 07:39:27 -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
06ffc7e952
Fix allocation size overflow check in `CowData`
2023-09-19 16:14:00 +02: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
Matthew Murphy
ca3e25de04
Fix variant call compiler error
...
Co-authored-by: David Snopek <dsnopek@gmail.com>
2023-09-09 11:30:29 -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