pub struct NodeHandle<K: Ord + Clone, V: Clone, const SIZE: usize>(/* private fields */);Expand description
Implementations§
Source§impl<K: Ord + Clone, V: Clone, const SIZE: usize> NodeHandle<K, V, SIZE>
impl<K: Ord + Clone, V: Clone, const SIZE: usize> NodeHandle<K, V, SIZE>
pub fn view(&self) -> NodeRef<'_, K, V, SIZE>
Sourcepub unsafe fn create<I: IntoIterator<Item = (K, V)>>(
left: Option<Self>,
pairs: I,
right: Option<Self>,
) -> Self
pub unsafe fn create<I: IntoIterator<Item = (K, V)>>( left: Option<Self>, pairs: I, right: Option<Self>, ) -> Self
A node holding pairs above left and below right.
§Safety
The arguments must describe a node the map could have built,
exactly as a NodeRef reported it: between one and SIZE
pairs in strictly increasing key order, every key of left
below them and every key of right above, and the subtrees’
heights within two of each other. Nothing is checked; a map
over a node that breaks these is wrong in lookups and updates.
Trait Implementations§
Auto Trait Implementations§
impl<K, V, const SIZE: usize> Freeze for NodeHandle<K, V, SIZE>where
Node<K, V, SIZE>: Freeze,
impl<K, V, const SIZE: usize> RefUnwindSafe for NodeHandle<K, V, SIZE>where
Node<K, V, SIZE>: RefUnwindSafe,
impl<K, V, const SIZE: usize> Send for NodeHandle<K, V, SIZE>where
Node<K, V, SIZE>: Send,
impl<K, V, const SIZE: usize> Sync for NodeHandle<K, V, SIZE>where
Node<K, V, SIZE>: Sync,
impl<K, V, const SIZE: usize> Unpin for NodeHandle<K, V, SIZE>where
Node<K, V, SIZE>: Unpin,
impl<K, V, const SIZE: usize> UnsafeUnpin for NodeHandle<K, V, SIZE>where
Node<K, V, SIZE>: UnsafeUnpin,
impl<K, V, const SIZE: usize> UnwindSafe for NodeHandle<K, V, SIZE>where
Node<K, V, SIZE>: 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