diff options
| -rw-r--r-- | src/error.rs | 40 | 
1 files changed, 16 insertions, 24 deletions
| diff --git a/src/error.rs b/src/error.rs index a2b3848..1aaf21f 100644 --- a/src/error.rs +++ b/src/error.rs @@ -1,4 +1,3 @@ -use std::borrow;  use std::error;  use std::fmt;  use std::os::raw; @@ -128,35 +127,28 @@ impl CommandError {              _ => None,          }      } - -    fn as_str(&self) -> borrow::Cow<'static, str> { -        match *self { -            CommandError::WrongCrc => { -                "A packet with a wrong checksum has been sent or received".into() -            } -            CommandError::WrongSlot => "The given OTP slot does not exist".into(), -            CommandError::SlotNotProgrammed => "The given OTP slot is not programmed".into(), -            CommandError::WrongPassword => "The given password is wrong".into(), -            CommandError::NotAuthorized => { -                "You are not authorized for this command or provided a wrong temporary \ -                 password" -                    .into() -            } -            CommandError::Timestamp => "An error occurred when getting or setting the time".into(), -            CommandError::NoName => "You did not provide a name for the OTP slot".into(), -            CommandError::NotSupported => "This command is not supported by this device".into(), -            CommandError::UnknownCommand => "This command is unknown".into(), -            CommandError::AesDecryptionFailed => "AES decryption failed".into(), -            CommandError::Undefined => "An unspecified error occurred".into(), -        } -    }  }  impl error::Error for CommandError {}  impl fmt::Display for CommandError {      fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { -        write!(f, "{}", self.as_str()) +        f.write_str(match *self { +            CommandError::WrongCrc => "A packet with a wrong checksum has been sent or received", +            CommandError::WrongSlot => "The given OTP slot does not exist", +            CommandError::SlotNotProgrammed => "The given OTP slot is not programmed", +            CommandError::WrongPassword => "The given password is wrong", +            CommandError::NotAuthorized => { +                "You are not authorized for this command or provided a wrong temporary \ +                 password" +            } +            CommandError::Timestamp => "An error occurred when getting or setting the time", +            CommandError::NoName => "You did not provide a name for the OTP slot", +            CommandError::NotSupported => "This command is not supported by this device", +            CommandError::UnknownCommand => "This command is unknown", +            CommandError::AesDecryptionFailed => "AES decryption failed", +            CommandError::Undefined => "An unspecified error occurred", +        })      }  } | 
