bevy/crates/bevy_reflect/src
Maksymilian Mozolewski ac1aebed5e Add reflect(skip_serializing) which retains reflection but disables automatic serialization (#5250)
# Objective

- To address problems outlined in https://github.com/bevyengine/bevy/issues/5245

## Solution

- Introduce `reflect(skip_serializing)` on top of `reflect(ignore)` which disables automatic serialisation to scenes, but does not disable reflection of the field.

---

## Changelog
- Adds: 
  - `bevy_reflect::serde::type_data` module
  - `SerializationData` structure for describing which fields are to be/not to be ignored, automatically registers as type_data for struct-based types
  - the `skip_serialization` flag for `#[reflect(...)]`
 - Removes:
   - ability to ignore Enum variants in serialization, since that didn't work anyway   
 

## Migration Guide
- Change `#[reflect(ignore)]` to `#[reflect(skip_serializing)]` where disabling reflection is not the intended effect.
- Remove ignore/skip attributes from enum variants as these won't do anything anymore
2022-09-19 16:12:10 +00:00
..
enums Add reflect(skip_serializing) which retains reflection but disables automatic serialization (#5250) 2022-09-19 16:12:10 +00:00
impls Move sprite::Rect into bevy_math (#5686) 2022-09-02 12:35:23 +00:00
serde Add reflect(skip_serializing) which retains reflection but disables automatic serialization (#5250) 2022-09-19 16:12:10 +00:00
array.rs bevy_reflect: Get owned fields (#5728) 2022-08-30 21:20:58 +00:00
fields.rs bevy_reflect: Add statically available type info for reflected types (#4042) 2022-06-09 21:18:15 +00:00
lib.rs Query filter types must be ReadOnlyWorldQuery (#6008) 2022-09-18 23:52:01 +00:00
list.rs bevy_reflect: Get owned fields (#5728) 2022-08-30 21:20:58 +00:00
map.rs bevy_reflect: Get owned fields (#5728) 2022-08-30 21:20:58 +00:00
path.rs add some info from ReflectPathError to the error messages (#5626) 2022-08-09 16:53:28 +00:00
reflect.rs bevy_reflect: Update Reflection documentation (#5841) 2022-09-02 16:17:45 +00:00
std_traits.rs add #[reflect(Default)] to create default value for reflected types (#3733) 2022-05-03 19:20:13 +00:00
struct_trait.rs Add reflect(skip_serializing) which retains reflection but disables automatic serialization (#5250) 2022-09-19 16:12:10 +00:00
tuple_struct.rs Make reflect_partial_eq return more accurate results (#5210) 2022-07-05 17:41:54 +00:00
tuple.rs Add reflect(skip_serializing) which retains reflection but disables automatic serialization (#5250) 2022-09-19 16:12:10 +00:00
type_info.rs bevy_reflect: Reflect enums (#4761) 2022-08-02 22:14:41 +00:00
type_registry.rs Add reflect(skip_serializing) which retains reflection but disables automatic serialization (#5250) 2022-09-19 16:12:10 +00:00
type_uuid.rs re-enable #[derive(TypeUuid)] for generics (#4118) 2022-04-26 19:41:25 +00:00
utility.rs Make Reflect safe to implement (#5010) 2022-06-27 16:52:25 +00:00