mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-10-31 13:04:42 +00:00 
			
		
		
		
	 84ac80f192
			
		
	
	
		84ac80f192
		
	
	
	
	
		
			
			The previous commit updated `rustfmt.toml` appropriately. This commit is the outcome of running `x fmt --all` with the new formatting options.
		
			
				
	
	
		
			24 lines
		
	
	
		
			671 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			671 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
| use rustc_data_structures::fx::FxHashMap;
 | |
| 
 | |
| use crate::ErrCode;
 | |
| 
 | |
| #[derive(Debug)]
 | |
| pub struct InvalidErrorCode;
 | |
| 
 | |
| #[derive(Clone)]
 | |
| pub struct Registry {
 | |
|     long_descriptions: FxHashMap<ErrCode, &'static str>,
 | |
| }
 | |
| 
 | |
| impl Registry {
 | |
|     pub fn new(long_descriptions: &[(ErrCode, &'static str)]) -> Registry {
 | |
|         Registry { long_descriptions: long_descriptions.iter().copied().collect() }
 | |
|     }
 | |
| 
 | |
|     /// Returns `InvalidErrorCode` if the code requested does not exist in the
 | |
|     /// registry.
 | |
|     pub fn try_find_description(&self, code: ErrCode) -> Result<&'static str, InvalidErrorCode> {
 | |
|         self.long_descriptions.get(&code).copied().ok_or(InvalidErrorCode)
 | |
|     }
 | |
| }
 |