fn take_left(&mut self) -> Option<KV> {
        let (lkey, lval) = self.left.next().unwrap();
        match lval {
            Delta::Set { value } => Some((lkey.clone(), value.clone())),
            Delta::Delete {} => self.next(),
        }
    }
/// take_left must only be called when we know self.left.next() will return Some
take_left must only be called when we know self.left.next() will return Some
take_left must only be called when we know self . left . next () will return Some
fn take_left(&mut self) -> Option<KV> {
        let (lkey, lval) = self.left.next().unwrap();
        match lval {
            Delta::Set { value } => Some((lkey.clone(), value.clone())),
            Delta::Delete {} => self.next(),
        }
    }
fn take_left ( & mut self ) -> Option < KV > { let ( lkey , lval ) = self . left . next ( ) . unwrap ( ) ; match lval { Delta :: Set { value } => Some ( ( lkey . clone ( ) , value . clone ( ) ) ) , Delta :: Delete { } => self . next ( ) , } }
take_left must only be called when we know self.left.next() will return Some
take_left must only be called when we know self . left . next () will return Some
&mut self
&mut self