pub struct ExpandedFamily {
pub specs: Vec<InductiveSpec>,
pub num_originals: usize,
pub aux_maps: Vec<AuxMap>,
pub lparams: Vec<Name>,
pub num_params: u32,
}Expand description
The nesting-free mutual family produced by specialize: the originals (with
nested container applications rewritten to auxiliary references) followed by
the freshly-synthesized auxiliary inductives.
Fields§
§specs: Vec<InductiveSpec>Originals (rewritten) followed by auxiliaries — a genuine mutual family.
num_originals: usizeNumber of leading specs that are the original (user-facing) types.
aux_maps: Vec<AuxMap>One entry per auxiliary type (restoration metadata for S3).
lparams: Vec<Name>Shared level parameters of the family.
num_params: u32Shared parameter count of the family.
Trait Implementations§
Source§impl Clone for ExpandedFamily
impl Clone for ExpandedFamily
Auto Trait Implementations§
impl !Send for ExpandedFamily
impl !Sync for ExpandedFamily
impl Forget for ExpandedFamily
impl Freeze for ExpandedFamily
impl Move for ExpandedFamily
impl RefUnwindSafe for ExpandedFamily
impl Unpin for ExpandedFamily
impl UnsafeUnpin for ExpandedFamily
impl UnwindSafe for ExpandedFamily
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