about summary refs log tree commit diff
path: root/library/alloc/src
diff options
context:
space:
mode:
authorMara Bos <m-ou.se@m-ou.se>2021-03-04 15:57:26 +0100
committerMara Bos <m-ou.se@m-ou.se>2021-03-04 15:58:50 +0100
commitd85d82ab2234cf08e2e86575d0cdebefdb819831 (patch)
treef83a52337fab8c386b8dfdd092ee458f43e760e3 /library/alloc/src
parent69d95e232af0fe81de85e1e4a1f8dc73d7b0f16c (diff)
downloadrust-d85d82ab2234cf08e2e86575d0cdebefdb819831.tar.gz
rust-d85d82ab2234cf08e2e86575d0cdebefdb819831.zip
Implement Error for OccupiedError.
Diffstat (limited to 'library/alloc/src')
-rw-r--r--library/alloc/src/collections/btree/map/entry.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/library/alloc/src/collections/btree/map/entry.rs b/library/alloc/src/collections/btree/map/entry.rs
index cc508f30a61..a5ece31d67b 100644
--- a/library/alloc/src/collections/btree/map/entry.rs
+++ b/library/alloc/src/collections/btree/map/entry.rs
@@ -93,6 +93,19 @@ impl<K: Debug + Ord, V: Debug> Debug for OccupiedError<'_, K, V> {
     }
 }
 
+#[unstable(feature = "map_try_insert", issue = "none")]
+impl<'a, K: Debug + Ord, V: Debug> fmt::Display for OccupiedError<'a, K, V> {
+    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
+        write!(
+            f,
+            "failed to insert {:?}, key {:?} already exists with value {:?}",
+            self.value,
+            self.entry.key(),
+            self.entry.get(),
+        )
+    }
+}
+
 impl<'a, K: Ord, V> Entry<'a, K, V> {
     /// Ensures a value is in the entry by inserting the default if empty, and returns
     /// a mutable reference to the value in the entry.