bevy/crates/bevy_ecs/src/storage
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
..
blob_vec.rs Replace BlobVec's swap_scratch with a swap_nonoverlapping (#4853) 2022-11-16 20:57:43 +00:00
mod.rs Extract Resources into their own dedicated storage (#4809) 2022-10-24 13:46:36 +00:00
resource.rs Newtype ArchetypeRow and TableRow (#4878) 2022-12-06 01:38:21 +00:00
sparse_set.rs Newtype ArchetypeRow and TableRow (#4878) 2022-12-06 01:38:21 +00:00
table.rs Newtype ArchetypeRow and TableRow (#4878) 2022-12-06 01:38:21 +00:00