pub(crate) struct AliasNode {
pub parent: Option<usize>,
pub fields: Vec<usize>,
pub local: Local,
}Expand description
A single node in the alias forest.
Fields§
§parent: Option<usize>§fields: Vec<usize>Field projections (ProjectionElem::Field indices) from the parent’s
referent down to this pointer (e.g. self.node.ptr → [node, ptr]).
Empty for whole-local pointers. Used by AliasTree::resolve_to_root to
reconstruct the nested-field origin.
local: LocalTrait Implementations§
Auto Trait Implementations§
impl DynSend for AliasNode
impl DynSync for AliasNode
impl Freeze for AliasNode
impl RefUnwindSafe for AliasNode
impl Send for AliasNode
impl Sync for AliasNode
impl Unpin for AliasNode
impl UnsafeUnpin for AliasNode
impl UnwindSafe for AliasNode
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more