| use displaydoc::Display; |
| |
| #[derive(Debug, Display)] |
| pub enum DataStoreError { |
| /// data store disconnected |
| Disconnect, |
| /// the data for key `{0}` is not available |
| Redaction(String), |
| /// invalid header (expected {expected:?}, found {found:?}) |
| InvalidHeader { expected: String, found: String }, |
| /// unknown data store error |
| Unknown, |
| } |
| |
| fn main() { |
| let disconnect = DataStoreError::Disconnect; |
| println!( |
| "Enum value `Disconnect` should be printed as:\n\t{}", |
| disconnect |
| ); |
| |
| let redaction = DataStoreError::Redaction(String::from("Dummy")); |
| println!( |
| "Enum value `Redaction` should be printed as:\n\t{}", |
| redaction |
| ); |
| |
| let invalid_header = DataStoreError::InvalidHeader { |
| expected: String::from("https"), |
| found: String::from("http"), |
| }; |
| println!( |
| "Enum value `InvalidHeader` should be printed as:\n\t{}", |
| invalid_header |
| ); |
| } |