diff options
| author | Stein Somers <git@steinsomers.be> | 2020-04-06 19:03:18 +0200 |
|---|---|---|
| committer | Stein Somers <git@steinsomers.be> | 2020-04-06 19:03:18 +0200 |
| commit | c23ee767d94a8ea5e0aa782731f89f4e00fbdc7e (patch) | |
| tree | 418e4b4396c787b80a34d54918e2726a6a551e63 /src/liballoc/collections | |
| parent | bdbe56ecb837ce462f99508837ff66fc09d23cd8 (diff) | |
| download | rust-c23ee767d94a8ea5e0aa782731f89f4e00fbdc7e.tar.gz rust-c23ee767d94a8ea5e0aa782731f89f4e00fbdc7e.zip | |
BTreeMap first/last: make examples more to the point
Diffstat (limited to 'src/liballoc/collections')
| -rw-r--r-- | src/liballoc/collections/btree/map.rs | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/src/liballoc/collections/btree/map.rs b/src/liballoc/collections/btree/map.rs index c782fb4f6a9..d550856b6ed 100644 --- a/src/liballoc/collections/btree/map.rs +++ b/src/liballoc/collections/btree/map.rs @@ -663,8 +663,6 @@ impl<K: Ord, V> BTreeMap<K, V> { /// /// # Examples /// - /// Contrived way to `clear` a map: - /// /// ``` /// #![feature(map_first_last)] /// use std::collections::BTreeMap; @@ -672,10 +670,13 @@ impl<K: Ord, V> BTreeMap<K, V> { /// let mut map = BTreeMap::new(); /// map.insert(1, "a"); /// map.insert(2, "b"); - /// while let Some(entry) = map.first_entry() { - /// let (key, val) = entry.remove_entry(); - /// assert!(!map.contains_key(&key)); + /// if let Some(mut entry) = map.first_entry() { + /// if *entry.key() > 0 { + /// entry.insert("first"); + /// } /// } + /// assert_eq!(*map.get(&1).unwrap(), "first"); + /// assert_eq!(*map.get(&2).unwrap(), "b"); /// ``` #[unstable(feature = "map_first_last", issue = "62924")] pub fn first_entry(&mut self) -> Option<OccupiedEntry<'_, K, V>> { @@ -715,8 +716,6 @@ impl<K: Ord, V> BTreeMap<K, V> { /// /// # Examples /// - /// Contrived way to `clear` a map: - /// /// ``` /// #![feature(map_first_last)] /// use std::collections::BTreeMap; @@ -724,10 +723,13 @@ impl<K: Ord, V> BTreeMap<K, V> { /// let mut map = BTreeMap::new(); /// map.insert(1, "a"); /// map.insert(2, "b"); - /// while let Some(entry) = map.last_entry() { - /// let (key, val) = entry.remove_entry(); - /// assert!(!map.contains_key(&key)); + /// if let Some(mut entry) = map.last_entry() { + /// if *entry.key() > 0 { + /// entry.insert("last"); + /// } /// } + /// assert_eq!(*map.get(&1).unwrap(), "a"); + /// assert_eq!(*map.get(&2).unwrap(), "last"); /// ``` #[unstable(feature = "map_first_last", issue = "62924")] pub fn last_entry(&mut self) -> Option<OccupiedEntry<'_, K, V>> { |
