pub enum ReturnGuard {
None,
Unconstructed(Identifier),
Constructed {
plain: Identifier,
any_return: Identifier,
},
}
Variants§
None
There were no conditionals on the path to this return statement.
Unconstructed(Identifier)
There was a chain of conditionals on the path to this return statement, and they are true iff this Identifier is true.
Constructed
There was a chain of conditionals on the path to this return statement.`
Fields
§
plain: Identifier
True iff the conditionals on the path to this return statement are true.
§
any_return: Identifier
True iff any of the guards to return statements so far encountered are true. We cache this to guard asserts against early returns.
Trait Implementations§
Source§impl Clone for ReturnGuard
impl Clone for ReturnGuard
Source§fn clone(&self) -> ReturnGuard
fn clone(&self) -> ReturnGuard
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreimpl Copy for ReturnGuard
Auto Trait Implementations§
impl Freeze for ReturnGuard
impl RefUnwindSafe for ReturnGuard
impl Send for ReturnGuard
impl Sync for ReturnGuard
impl Unpin for ReturnGuard
impl UnwindSafe for ReturnGuard
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