bevy/crates/bevy_ecs/src/storage
James Liu f4920bbd6d Mark TableRow and TableId as repr(transparent) (#7166)
# Objective
Following #6681, both `TableRow` and `TableId` are now part of `EntityLocation`. However, the safety invariant on `EntityLocation` requires that all of the constituent fields are `repr(transprent)` or `repr(C)` and the bit pattern of all 1s must be valid. This is not true for `TableRow` and `TableId` currently.

## Solution
Mark `TableRow` and `TableId` to satisfy the safety requirement. Add safety comments on `ArchetypeId`, `ArchetypeRow`, `TableId` and `TableRow`.
2023-01-11 23:31:22 +00:00
..
blob_vec.rs Ensure Ptr/PtrMut/OwningPtr are aligned when casting in debug builds (#7117) 2023-01-11 23:12:20 +00:00
mod.rs Panic on dropping NonSend in non-origin thread. (#6534) 2023-01-09 20:40:34 +00:00
resource.rs Panic on dropping NonSend in non-origin thread. (#6534) 2023-01-09 20:40:34 +00:00
sparse_set.rs Newtype ArchetypeRow and TableRow (#4878) 2022-12-06 01:38:21 +00:00
table.rs Mark TableRow and TableId as repr(transparent) (#7166) 2023-01-11 23:31:22 +00:00