]> git.lizzy.rs Git - rust.git/blobdiff - library/alloc/src/collections/btree/node.rs
BTreeMap: better way to postpone root access in DrainFilter
[rust.git] / library / alloc / src / collections / btree / node.rs
index 6a4c495ea14642d0ec1f8f720df9508621885116..4e52c16d20d20d81fc2cbd424124fb98eb71d226 100644 (file)
@@ -1083,12 +1083,12 @@ pub fn split(mut self) -> (NodeRef<marker::Mut<'a>, K, V, marker::Leaf>, K, V, R
     /// between the now adjacent key/value pairs (if any) to the left and right of this handle.
     pub fn remove(
         mut self,
-    ) -> (Handle<NodeRef<marker::Mut<'a>, K, V, marker::Leaf>, marker::Edge>, K, V) {
+    ) -> ((K, V), Handle<NodeRef<marker::Mut<'a>, K, V, marker::Leaf>, marker::Edge>) {
         unsafe {
             let k = slice_remove(self.node.keys_mut(), self.idx);
             let v = slice_remove(self.node.vals_mut(), self.idx);
             (*self.node.as_leaf_mut()).len -= 1;
-            (self.left_edge(), k, v)
+            ((k, v), self.left_edge())
         }
     }
 }