pub struct RcuRawHashMapCursor<'a, K, V, S = RapidBuildHasher>where
K: Eq + Hash + Clone + Send + Sync + 'static,
V: Clone + Send + Sync + 'static,
S: BuildHasher + Send + Sync + 'static,{ /* private fields */ }Expand description
A cursor for traversing and modifying an RcuRawHashMap.
See RcuRawHashMap::cursor for more information.
Implementations§
Source§impl<'a, K, V, S> RcuRawHashMapCursor<'a, K, V, S>
impl<'a, K, V, S> RcuRawHashMapCursor<'a, K, V, S>
Sourcepub fn current(&self) -> Option<(&'a K, &'a V)>
pub fn current(&self) -> Option<(&'a K, &'a V)>
Returns the element at the current cursor position.
Sourcepub unsafe fn remove(&mut self) -> Option<V>
pub unsafe fn remove(&mut self) -> Option<V>
Removes the element at the current cursor position.
After calling remove, the cursor will be positioned at the next element in the list.
Concurrent readers may continue to see this entry in the list until the RCU state machine has made sufficient progress to ensure that no concurrent readers are holding read guards.
§Safety
Requires external synchronization to exclude concurrent writers.
Auto Trait Implementations§
impl<'a, K, V, S> Freeze for RcuRawHashMapCursor<'a, K, V, S>
impl<'a, K, V, S> RefUnwindSafe for RcuRawHashMapCursor<'a, K, V, S>
impl<'a, K, V, S = BuildHasherDefault<RapidHasher>> !Send for RcuRawHashMapCursor<'a, K, V, S>
impl<'a, K, V, S = BuildHasherDefault<RapidHasher>> !Sync for RcuRawHashMapCursor<'a, K, V, S>
impl<'a, K, V, S> Unpin for RcuRawHashMapCursor<'a, K, V, S>
impl<'a, K, V, S> UnsafeUnpin for RcuRawHashMapCursor<'a, K, V, S>
impl<'a, K, V, S> UnwindSafe for RcuRawHashMapCursor<'a, K, V, S>
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