struct OutlivesAtBinder {
regions_outlive: SeqHashSet<RegionBinder<RegionOutlives>>,
types_outlive: SeqHashSet<RegionBinder<TypeOutlives>>,
shorter_region: Option<Region>,
}Fields§
§regions_outlive: SeqHashSet<RegionBinder<RegionOutlives>>§types_outlive: SeqHashSet<RegionBinder<TypeOutlives>>§shorter_region: Option<Region>The lifetime of the innermost reference we’re inside of. When going under a binder, we keep it there.
E.g. in &'a for<'b> fn(&'b u32, &'c u32), the 'a stays on the outer binder, and we use
that to add 'c: 'a but we don’t add 'b: 'a since 'b is not visible from where 'a
is.
Implementations§
Source§impl OutlivesAtBinder
impl OutlivesAtBinder
fn finish( self, regions_outlive: &mut Vec<RegionBinder<RegionOutlives>>, types_outlive: &mut Vec<RegionBinder<TypeOutlives>>, )
Trait Implementations§
Source§impl Default for OutlivesAtBinder
impl Default for OutlivesAtBinder
Source§fn default() -> OutlivesAtBinder
fn default() -> OutlivesAtBinder
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for OutlivesAtBinder
impl RefUnwindSafe for OutlivesAtBinder
impl Send for OutlivesAtBinder
impl Sync for OutlivesAtBinder
impl Unpin for OutlivesAtBinder
impl UnsafeUnpin for OutlivesAtBinder
impl UnwindSafe for OutlivesAtBinder
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<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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