pub struct WeakSRc<Storage, T>where
Storage: SharedStorage,{ /* private fields */ }Expand description
Weak counterpart to SRc.
A weak handle must be upgraded before borrowing. This keeps “the shared value was dropped” separate from the existing state/storage borrow errors.
ⓘ
let shared = SRcRefCell::<Connection>::new::<Disconnected>(connection);
let weak = shared.downgrade();
if let Some(shared) = weak.upgrade() {
let disconnected = shared.borrow::<Disconnected>()?;
}Implementations§
Source§impl<Storage, T> WeakSRc<Storage, T>where
Storage: SharedStorage,
impl<Storage, T> WeakSRc<Storage, T>where
Storage: SharedStorage,
Trait Implementations§
Auto Trait Implementations§
impl<Storage, T> !RefUnwindSafe for WeakSRc<Storage, T>
impl<Storage, T> !Send for WeakSRc<Storage, T>
impl<Storage, T> !Sync for WeakSRc<Storage, T>
impl<Storage, T> !UnwindSafe for WeakSRc<Storage, T>
impl<Storage, T> Freeze for WeakSRc<Storage, T>
impl<Storage, T> StateClone for WeakSRc<Storage, T>
impl<Storage, T> StateCopy for WeakSRc<Storage, T>
impl<Storage, T> Unpin for WeakSRc<Storage, T>
impl<Storage, T> UnsafeUnpin for WeakSRc<Storage, T>
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