pub struct StructModel {
pub name: ModelName,
pub type_id: TypeId,
pub total_len: usize,
pub fields: Vec<FieldModel>,
}
Expand description
The model for a struct type, i.e. how it and its fields are represented in the save file.
Fields§
§name: ModelName
The struct’s name.
This does not include generic lifetimes and type parameters.
type_id: TypeId
A unique identifier for the struct’s type, which also considers generic parameters.
total_len: usize
§fields: Vec<FieldModel>
Implementations§
Source§impl StructModel
impl StructModel
Sourcepub fn new_opaque(name: ModelName, type_id: TypeId, size: usize) -> Self
pub fn new_opaque(name: ModelName, type_id: TypeId, size: usize) -> Self
Creates a model for a struct with no fields (or all hidden fields).
It is “opaque” because from the user’s perspective, it is just a block of bytes with a name and size.
Sourcepub fn new_builder(name: ModelName, type_id: TypeId) -> StructModelBuilder
pub fn new_builder(name: ModelName, type_id: TypeId) -> StructModelBuilder
Creates a struct model builder.
The builder allows fields to be added to the model.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for StructModel
impl RefUnwindSafe for StructModel
impl Send for StructModel
impl Sync for StructModel
impl Unpin for StructModel
impl UnwindSafe for StructModel
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more