pub struct EntityMeta {
pub offset: u32,
pub len: u32,
pub save_level: u16,
pub flags: u8,
pub created_after_save: u32,
}Expand description
Metadata for one entity in an arena store.
Fields§
§offset: u32Offset into the backing store’s data vec.
len: u32Allocated capacity (number of elements/bytes).
save_level: u16Save level when created or last COW-copied.
flags: u8Bit 0: is_global, Bit 1: gc_mark (reserved for future use), Bit 2: cow_backup.
created_after_save: u32Save ID that was active when this entity was created (0 = before any save). Used for invalidrestore: entities with created_after_save >= target_save_id are “newer than the snapshot being restored.”
Implementations§
Source§impl EntityMeta
impl EntityMeta
Sourcepub fn set_global(&mut self, global: bool)
pub fn set_global(&mut self, global: bool)
Set the global flag.
Sourcepub fn is_cow_backup(&self) -> bool
pub fn is_cow_backup(&self) -> bool
Whether this entity is a copy-on-write backup rather than live data.
cow_copy allocates one of these to hold a composite’s pre-mutation
contents so restore can swap them back. It is never reachable from
PostScript in either state: before the restore it holds the snapshot,
after it holds the discarded post-save data. Whole-arena sweeps that
reason about reachability — see crate::vm_audit — must skip it.
Sourcepub fn set_cow_backup(&mut self)
pub fn set_cow_backup(&mut self)
Mark this entity as a copy-on-write backup.
Trait Implementations§
Source§impl Clone for EntityMeta
impl Clone for EntityMeta
Source§fn clone(&self) -> EntityMeta
fn clone(&self) -> EntityMeta
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more