pub struct OccurrenceOrigin {
pub id: OccurrenceId,
pub parent: Option<OccurrenceId>,
pub template: TemplateId,
pub inclusion_site: Option<RelationshipSlot>,
pub label: SourceLabel,
pub authored: Rc<[AuthoredItem]>,
pub conditionals: Vec<ConditionalId>,
}Expand description
Retains one occurrence using parent links, never copied full invocation paths.
Identities retain no recipe edges. See TypedTemplate::instantiate.
Fields§
§id: OccurrenceIdIdentifies this live occurrence.
parent: Option<OccurrenceId>Identifies its immediate parent, or None for a root invocation.
template: TemplateIdIdentifies its immutable definition.
inclusion_site: Option<RelationshipSlot>Identifies the local inclusion group in the parent.
label: SourceLabelRetains a real definition location, or a span-free native label.
Retains authored local metadata, independent of definition owners.
conditionals: Vec<ConditionalId>Maps authored conditional ordinals to their live execution identities.
Implementations§
Source§impl OccurrenceOrigin
impl OccurrenceOrigin
Borrows authored items, including original method ordinals and invocation sites.
§Examples
Trait Implementations§
Source§impl Clone for OccurrenceOrigin
impl Clone for OccurrenceOrigin
Auto Trait Implementations§
impl !Send for OccurrenceOrigin
impl !Sync for OccurrenceOrigin
impl Freeze for OccurrenceOrigin
impl RefUnwindSafe for OccurrenceOrigin
impl Unpin for OccurrenceOrigin
impl UnsafeUnpin for OccurrenceOrigin
impl UnwindSafe for OccurrenceOrigin
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