pub struct SyncSendHelper<K, V> { /* private fields */ }Expand description
Delegate the job of deciding about Send, Sync to rustc (ignore this)
only the *const V::Target is not default Send/Sync in TotalOrderMultiMap as
it’s a pointer, but we can ignore it as whenever we accessed a value through
it we can argue that we could have accessed the value “just” through safe code.
It would just have been slower. And using the fast path doesn’t circumvent any
safety mechanisms like e.g. lock guards. As such if this struct is Send/Sync
than TotalOrderMultiMap can be Send/Sync, too.
Auto Trait Implementations§
impl<K, V> Freeze for SyncSendHelper<K, V>
impl<K, V> RefUnwindSafe for SyncSendHelper<K, V>where
K: RefUnwindSafe,
V: RefUnwindSafe,
impl<K, V> Send for SyncSendHelper<K, V>
impl<K, V> Sync for SyncSendHelper<K, V>
impl<K, V> Unpin for SyncSendHelper<K, V>
impl<K, V> UnwindSafe for SyncSendHelper<K, V>where
K: UnwindSafe,
V: UnwindSafe,
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