bevy/crates/bevy_ecs/src
James Liu 530be10e72 Newtype ArchetypeRow and TableRow (#4878)
# Objective
Prevent future unsoundness that was seen in #6623.

## Solution
Newtype both indexes in `Archetype` and `Table` as `ArchetypeRow` and `TableRow`. This avoids weird numerical manipulation on the indices, and can be stored and treated opaquely. Also enforces the source and destination of where these indices at a type level.

---

## Changelog
Changed: `Archetype` indices and `Table` rows have been newtyped as `ArchetypeRow` and `TableRow`.
2022-12-06 01:38:21 +00:00
..
entity Newtype ArchetypeRow and TableRow (#4878) 2022-12-06 01:38:21 +00:00
query Newtype ArchetypeRow and TableRow (#4878) 2022-12-06 01:38:21 +00:00
schedule Fix clippy::iter_with_drain (#6485) 2022-11-06 01:42:15 +00:00
storage Newtype ArchetypeRow and TableRow (#4878) 2022-12-06 01:38:21 +00:00
system Remove APIs deprecated in 0.9 (#6801) 2022-12-05 22:49:04 +00:00
world Newtype ArchetypeRow and TableRow (#4878) 2022-12-06 01:38:21 +00:00
archetype.rs Newtype ArchetypeRow and TableRow (#4878) 2022-12-06 01:38:21 +00:00
bundle.rs Newtype ArchetypeRow and TableRow (#4878) 2022-12-06 01:38:21 +00:00
change_detection.rs Split Component Ticks (#6547) 2022-11-21 12:59:09 +00:00
component.rs Split Component Ticks (#6547) 2022-11-21 12:59:09 +00:00
event.rs Borrow instead of consuming in EventReader::clear (#6851) 2022-12-05 23:07:20 +00:00
lib.rs Remove APIs deprecated in 0.9 (#6801) 2022-12-05 22:49:04 +00:00
reflect.rs Enable Constructing ReflectComponent/Resource (#6257) 2022-10-17 14:01:50 +00:00