Dmitry Stepanov
0b1694aa71
fixed incorrect impl of derived fields_count
2026-08-30 11:49:10 +03:00
Dmitry Stepanov
8b25b34db9
fixed tuple elements naming
2026-08-20 19:12:26 +03:00
Dmitry Stepanov
efe97b8229
handle non-exhaustive enums in Visit proc-macro correctly
2026-08-11 11:48:55 +03:00
Dmitry Stepanov
8363d35c0b
ability to ignore type uuid of generics in reflect proc-macro
2026-07-26 16:23:53 +03:00
Dmitry Stepanov
d03520e291
ability to replace hash map key via reflection + refactoring
2026-07-19 21:26:03 +03:00
Dmitry Stepanov
5112072d1e
bump msrv + clippy fixes
2026-07-04 20:54:03 +03:00
Dmitry Stepanov
d35476c864
more PartialEq impls
2026-06-07 23:58:55 +03:00
Dmitry Stepanov
7a798f7e68
Reflect::try_compare impls
2026-06-06 22:37:34 +03:00
Dmitry Stepanov
0965df060c
Reflect::try_compare draft
2026-06-05 23:06:29 +03:00
Dmitry Stepanov
7f33a13ff9
merged TypeUuidProvider trait into Reflect
2026-05-28 21:50:17 +03:00
Dmitry Stepanov
480559e07a
refactored Reflect::as_xxx methods to return value itself
...
- there's no reason anymore to use closures there because proxy structures now supports reflection in normal way
2026-05-21 18:22:39 +03:00
Dmitry Stepanov
32d37bde41
ability to specify custom clone function for reflect trait
2026-05-20 23:38:41 +03:00
Dmitry Stepanov
ec83a5d6e5
refactored Reflect trait to remove unnecessary proxying
...
- proxying to the inner value overly complicates the implementation and adds a lot overhead
- this is quite dangerous change since it may have subtle side effects, needs to be thoroughly tested
2026-05-19 18:49:17 +03:00
Dmitry Stepanov
93d4920477
renamed methods with confusing naming + docs
2026-05-16 19:31:41 +03:00
Dmitry Stepanov
e7f1b1d4d8
cleaned up type info fetching from Reflect + put type info in a struct
2026-05-15 11:32:33 +03:00
Dmitry Stepanov
b3be88a471
Reflect::into_any -> Reflect::into_inner_reflect + docs
2026-05-14 11:28:08 +03:00
Dmitry Stepanov
91f8c360b5
removed Reflect::as_any/as_any_mut
...
- useless methods because can be replaced via `Reflect::as_reflect` + `as &dyn Reflect` cast
2026-05-13 23:33:13 +03:00
Dmitry Stepanov
fcd280057b
count fields in proc macro
...
- much faster than calling the default impl
2026-05-10 10:54:41 +03:00
Dmitry Stepanov
c03e4aa7e9
removed ComponentProvider, merged its functionality into Reflect
...
- chained component fetching isn't supported yet, so it is not one-to-one merge
2026-05-09 19:55:11 +03:00
Dmitry Stepanov
5cf90dff53
Reflect::first_field_ref/mut_of_type
2026-05-08 15:18:08 +03:00
Dmitry Stepanov
1904f95519
Reflect::get_field_direct_ref/mut
2026-05-08 12:56:48 +03:00
Dmitry Stepanov
0527bcd2af
removed redundant allow switch
2026-05-07 22:31:31 +03:00
Dmitry Stepanov
660bcd709a
renamed field -> find_field + field_mut -> find_field_mut
2026-05-06 23:49:46 +03:00
Dmitry Stepanov
4a0602ab25
bump version for the future release
...
- helps to catch bug reports from the "nightly" version of the engine
2026-03-30 20:50:58 +03:00
Dmitry Stepanov
9e9e2d7032
1.0.1 + changelog
2026-03-28 09:39:38 +03:00
Dmitry Stepanov
496414ee33
bump version
2026-02-12 19:08:48 +03:00
Dmitry Stepanov
4de934e11f
1.0.0-rc.2
2026-02-05 22:04:37 +03:00
Dmitry Stepanov
739b8abb70
fixed infinite recursion in trait bounds for Visit and Reflect procmacro
...
- this bug was rare, but very annoying
2026-01-19 22:06:39 +03:00
Dmitry Stepanov
7b79b19a39
fixed clippy warnings
2025-11-01 17:23:37 +03:00
Dmitry
3a7fd975d5
removed redundant methods
...
- use trait upcasting instead
2025-10-25 13:47:55 +03:00
Dmitry Stepanov
ef39d2aada
updated msrv
2025-10-22 20:27:20 +03:00
Dmitry Stepanov
25652975e0
use doc comment for property description
2025-08-16 12:11:32 +03:00
Dmitry Stepanov
164534e22e
ability to specify pre and post visit method calls for visitor codegen
2025-06-26 18:34:59 +03:00
kkolyan
cca24f416a
(breaking change) blanket impl for ScriptMessagePayload replaced with derive macro
2025-06-11 22:21:20 +03:00
Dmitry Stepanov
0e3bd07c38
1.0.0-rc.1
2025-05-29 18:58:18 +03:00
Dmitry Stepanov
94e92e473d
ability to copy/paste values in inspector
...
- works incorrectly with inheritable variables, will be fixed later
2025-05-18 11:33:30 +03:00
Dmitry Stepanov
f0d6667d14
use Clone::clone(self) instead of self.clone() to improve error msg
2025-05-17 10:35:28 +03:00
Dmitry Stepanov
ef4e4b46ca
Reflect::try_clone_box
...
- `#[reflect(non_cloneable)]` for types that cannot be cloned
2025-05-16 23:26:34 +03:00
Dmitry Stepanov
9be5d8d485
use ascii format for engine assets by default
...
- improves mergeability of the assets
2025-04-13 23:07:38 +03:00
Dmitry Stepanov
88d870c8f0
visitor: fixed nodes reading in ascii mode
...
- fixed naming of methods
- more tests
- test ascii reading/writing correctness
2025-04-12 20:35:06 +03:00
Dmitry Stepanov
10a4dc048b
use trait upcasting and remove as_any for ResourceData
...
- bumped msrv to 1.86
2025-04-06 18:56:17 +03:00
Dmitry Stepanov
ad0bbc6ed8
more concise naming for Reflect methods
2025-03-14 20:01:13 +03:00
Dmitry Stepanov
b84ed6f6d8
removed redundant codegen for field/field_mut methods
2025-03-14 18:18:31 +03:00
Dmitry Stepanov
b3956c0a5c
removed Relfect::fields/fields_mut methods
...
- these are now redundant and basically a short version of `Reflect::fields_info/fields_info_mut` methods
2025-03-13 23:20:09 +03:00
Dmitry Stepanov
c171b68830
Reflect::fields_info_mut + optimizations
...
- allows iterating over fields while be able to mutate them
- reduced FieldInfoRef/Mut size even more to just a pointer+fat pointer
2025-03-13 20:52:28 +03:00
Dmitry Stepanov
f59d2fe783
split FieldInfo into two parts FieldInfo + FieldMetadata
...
- field metadata is now stored as a static variable and passed as a reference to FieldInfo
- speeds up fields iteration (especially with large hierarchies) by reducing amount of required stack-allocated memory and memory writes. Now it requires only 24 bytes, instead of ~96 bytes
- api-wise everything remains mostly unchanged (thanks to deref into FieldMetadata)
2025-03-12 20:08:25 +03:00
Dmitry Stepanov
d22a18ce95
removed owner_type_id field from FieldInfo
...
- it was used only once in the entire project and mostly useless in other cases
- this change allows to decouple field metadata from its actual values, thus speeding up fetching of fields info
2025-03-11 23:01:47 +03:00
Dmitry Stepanov
77ecf4faaf
removed redundant type_name field from FieldInfo
...
- it can be fetched "on-demand" using `info.value.type_name()`
- speeds up fields access and iteration a bit
2025-03-11 22:51:14 +03:00
Dmitry Stepanov
78859c6d55
more concise naming
2025-03-10 20:30:17 +03:00
Dmitry Stepanov
d2c2bf167d
merged DerivedEntityListProvider trait into Reflect trait
...
- it was a part of reflection system anyways
2025-03-09 19:43:48 +03:00