pub struct WeakRefKey<T>(pub WeakRef<T>);Expand description
Wrapper around WeakRef allowing to use it in a Set or as a key of a Map.
Tuple Fields§
§0: WeakRef<T>Methods from Deref<Target = WeakRef<T>>§
Sourcepub fn upgrade(&self) -> Option<TempRef<'_, T>>
pub fn upgrade(&self) -> Option<TempRef<'_, T>>
Try to upgrade the WeakRef into a TempRef. This will fail as soon as the last
OwnedRef is released, even if some TempRef still exist at that time. The returned
TempRef must be dropped as soon as possible. In particular, it must not be kept across
blocking calls.
Trait Implementations§
Source§impl<T> Clone for WeakRefKey<T>
impl<T> Clone for WeakRefKey<T>
Source§impl<T> Debug for WeakRefKey<T>
impl<T> Debug for WeakRefKey<T>
Source§impl<T> Deref for WeakRefKey<T>
impl<T> Deref for WeakRefKey<T>
Source§impl<'a, T> From<&OwnedRef<T>> for WeakRefKey<T>
impl<'a, T> From<&OwnedRef<T>> for WeakRefKey<T>
Source§impl<'a, T> From<&TempRef<'a, T>> for WeakRefKey<T>
impl<'a, T> From<&TempRef<'a, T>> for WeakRefKey<T>
Source§impl<T> From<WeakRef<T>> for WeakRefKey<T>
impl<T> From<WeakRef<T>> for WeakRefKey<T>
Source§impl<T> Hash for WeakRefKey<T>
impl<T> Hash for WeakRefKey<T>
Source§impl<T> Ord for WeakRefKey<T>
impl<T> Ord for WeakRefKey<T>
Source§impl<T> PartialEq for WeakRefKey<T>
impl<T> PartialEq for WeakRefKey<T>
Source§impl<T> PartialOrd for WeakRefKey<T>
impl<T> PartialOrd for WeakRefKey<T>
impl<T> Eq for WeakRefKey<T>
Auto Trait Implementations§
impl<T> Freeze for WeakRefKey<T>
impl<T> RefUnwindSafe for WeakRefKey<T>where
T: RefUnwindSafe,
impl<T> Send for WeakRefKey<T>
impl<T> Sync for WeakRefKey<T>
impl<T> Unpin for WeakRefKey<T>
impl<T> UnwindSafe for WeakRefKey<T>where
T: RefUnwindSafe,
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, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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