pub fn values(&self) -> Values<'_, K, V> {
        Values { inner: self.iter() }
    }
Models a reborrow of some unique reference, when you know that the reborrow
and all its descendants (i.e., all pointers and references derived from it)
will not be used any more at some point, after which you want to use the
original unique reference again.

The borrow checker usually handles this stacking of borrows for you, but
some control flows that accomplish this stacking are too complicated for
the compiler to follow. A `DormantMutRef` allows you to check borrowing
yourself, while s
benchmarks/haystacks/code/rust-library.rs