1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
pub struct ValuesIter<'a, K, V> where K: Ord, { pub(crate) slice: &'a [(K, V)], } impl<'a, K, V> Iterator for ValuesIter<'a, K, V> where K: Ord, { type Item = &'a V; fn next(&mut self) -> Option<Self::Item> { let (.., value) = self.slice.get(0)?; self.slice = &self.slice[1..]; Some(value) } }