@@ -315,7 +315,7 @@ impl<'a, K: Ord, V> VacantEntry<'a, K, V> {
315315 pub fn insert ( self , value : V ) -> & ' a mut V {
316316 let out_ptr = match self . handle {
317317 None => {
318- // SAFETY: We have consumed self.handle and the reference returned .
318+ // SAFETY: There is no tree yet so no reference to it exists .
319319 let map = unsafe { self . dormant_map . awaken ( ) } ;
320320 let mut root = NodeRef :: new_leaf ( ) ;
321321 let val_ptr = root. borrow_mut ( ) . push ( self . key , value) as * mut V ;
@@ -325,16 +325,17 @@ impl<'a, K: Ord, V> VacantEntry<'a, K, V> {
325325 }
326326 Some ( handle) => match handle. insert_recursing ( self . key , value) {
327327 ( None , val_ptr) => {
328- // SAFETY: We have consumed self.handle and the handle returned .
328+ // SAFETY: We have consumed self.handle.
329329 let map = unsafe { self . dormant_map . awaken ( ) } ;
330330 map. length += 1 ;
331331 val_ptr
332332 }
333333 ( Some ( ins) , val_ptr) => {
334334 drop ( ins. left ) ;
335- // SAFETY: We have consumed self.handle and the reference returned.
335+ // SAFETY: We have consumed self.handle and dropped the
336+ // remaining reference to the tree, ins.left.
336337 let map = unsafe { self . dormant_map . awaken ( ) } ;
337- let root = map. root . as_mut ( ) . unwrap ( ) ;
338+ let root = map. root . as_mut ( ) . unwrap ( ) ; // same as ins.left
338339 root. push_internal_level ( ) . push ( ins. kv . 0 , ins. kv . 1 , ins. right ) ;
339340 map. length += 1 ;
340341 val_ptr
0 commit comments