about summary refs log tree commit diff
diff options
context:
space:
mode:
authorDylan DPC <dylan.dpc@gmail.com>2020-05-09 03:10:07 +0200
committerGitHub <noreply@github.com>2020-05-09 03:10:07 +0200
commitd16d02b0114bbe86e5b674bf15b324cf7805b059 (patch)
tree95236526de7a89025cebe142ab070ba673cd21b8
parentf16c27f1c4821a0d763cb4a5a2c1d518126f024b (diff)
parent1a439d286530a020bbf7683011f07227e236bd7f (diff)
downloadrust-d16d02b0114bbe86e5b674bf15b324cf7805b059.tar.gz
rust-d16d02b0114bbe86e5b674bf15b324cf7805b059.zip
Rollup merge of #71890 - cuviper:simple-error-Registry, r=cramertj
Simplify the error Registry methods a little
-rw-r--r--src/librustc_errors/registry.rs9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/librustc_errors/registry.rs b/src/librustc_errors/registry.rs
index 32700c6500b..b1d770d5bd5 100644
--- a/src/librustc_errors/registry.rs
+++ b/src/librustc_errors/registry.rs
@@ -10,12 +10,12 @@ pub struct Registry {
 
 impl Registry {
     pub fn new(long_descriptions: &[(&'static str, Option<&'static str>)]) -> Registry {
-        Registry { long_descriptions: long_descriptions.iter().cloned().collect() }
+        Registry { long_descriptions: long_descriptions.iter().copied().collect() }
     }
 
     /// This will panic if an invalid error code is passed in
     pub fn find_description(&self, code: &str) -> Option<&'static str> {
-        self.try_find_description(code).unwrap()
+        self.long_descriptions[code]
     }
     /// Returns `InvalidErrorCode` if the code requested does not exist in the
     /// registry. Otherwise, returns an `Option` where `None` means the error
@@ -24,9 +24,6 @@ impl Registry {
         &self,
         code: &str,
     ) -> Result<Option<&'static str>, InvalidErrorCode> {
-        if !self.long_descriptions.contains_key(code) {
-            return Err(InvalidErrorCode);
-        }
-        Ok(*self.long_descriptions.get(code).unwrap())
+        self.long_descriptions.get(code).copied().ok_or(InvalidErrorCode)
     }
 }