pub struct VariableLayout {
pub size: Extent,
pub offsets: Vec<Option<Extent>>,
}Expand description
What is left of a record’s layout when it depends on something the program computes.
Present on exactly the records that have a variable length array somewhere in their members,
which C calls variably modified and which may only be declared inside a function. The
alignment is not in here because an alignment never varies: it is decided by the members
rather than by where they land, so it is in the Layout beside this with a size of zero.
Fields§
§size: ExtentHow large the record is, padded to its alignment the way a fixed size one is.
offsets: Vec<Option<Extent>>Where each member sits, in bytes, one entry per member and in the same order.
Absent for a member that sits where the number in its Field says, which is every
member in front of the first one of no fixed size and is the common case even here.