/// Allow Debug implementations to predict the next element.
pub(super) fn peek(&self) -> Option<(&K, &V)> {
let edge = self.cur_leaf_edge.as_ref()?;
- edge.reborrow().next_kv().ok().map(|kv| kv.into_kv())
+ edge.reborrow().next_kv().ok().map(Handle::into_kv)
}
/// Implementation of a typical `DrainFilter::next` method, given the predicate.
let mut edge = self.forget_node_type();
loop {
edge = match edge.right_kv() {
- Ok(internal_kv) => return Ok(internal_kv),
+ Ok(kv) => return Ok(kv),
Err(last_edge) => match last_edge.into_node().ascend() {
Ok(parent_edge) => parent_edge.forget_node_type(),
Err(root) => return Err(root),
let mut edge = self.forget_node_type();
loop {
edge = match edge.left_kv() {
- Ok(internal_kv) => return Ok(internal_kv),
+ Ok(kv) => return Ok(kv),
Err(last_edge) => match last_edge.into_node().ascend() {
Ok(parent_edge) => parent_edge.forget_node_type(),
Err(root) => return Err(root),
/// The returned pointer points to the inserted value.
fn insert(mut self, key: K, val: V) -> (InsertResult<'a, K, V, marker::Leaf>, *mut V) {
if self.node.len() < CAPACITY {
- let ptr = self.insert_fit(key, val);
+ let val_ptr = self.insert_fit(key, val);
let kv = unsafe { Handle::new_kv(self.node, self.idx) };
- (InsertResult::Fit(kv), ptr)
+ (InsertResult::Fit(kv), val_ptr)
} else {
let (middle_kv_idx, insertion) = splitpoint(self.idx);
let middle = unsafe { Handle::new_kv(self.node, middle_kv_idx) };
let (mut left, k, v, mut right) = middle.split();
- let ptr = match insertion {
+ let val_ptr = match insertion {
InsertionPlace::Left(insert_idx) => unsafe {
Handle::new_edge(left.reborrow_mut(), insert_idx).insert_fit(key, val)
},
.insert_fit(key, val)
},
};
- (InsertResult::Split(SplitResult { left: left.forget_type(), k, v, right }), ptr)
+ (InsertResult::Split(SplitResult { left: left.forget_type(), k, v, right }), val_ptr)
}
}
}