pub enum BodyKind {
Main,
Promoted(Promoted),
}Expand description
Selects a particular [rustc_middle::mir::Body] within a [BodyWithBorrowckFacts].
Variants§
Main
The main body, i.e. facts.body.
Promoted(Promoted)
The promoted constant at the given index, i.e. facts.promoted[_].
Implementations§
Source§impl BodyKind
impl BodyKind
Sourcepub fn select_body<'a, 'tcx>(
self,
facts: &'a BodyWithBorrowckFacts<'tcx>,
) -> &'a Body<'tcx>
pub fn select_body<'a, 'tcx>( self, facts: &'a BodyWithBorrowckFacts<'tcx>, ) -> &'a Body<'tcx>
The [rustc_middle::mir::Body] this kind selects out of facts.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for BodyKind
impl RefUnwindSafe for BodyKind
impl Send for BodyKind
impl Sync for BodyKind
impl Unpin for BodyKind
impl UnwindSafe for BodyKind
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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