use core::fmt;
#[cfg(feature = "std")]
use std::error::Error as StdError;
#[derive(Copy, Clone, Debug, PartialEq)]
pub enum Error {
Character,
Length,
Generate,
Checksum,
}
pub type Result<T> = ::core::result::Result<T, Error>;
impl fmt::Display for Error {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
match self {
Error::Character => write!(f, "Barcode data is invalid"),
Error::Length => write!(f, "Barcode data length is invalid"),
Error::Generate => write!(f, "Could not generate barcode data"),
Error::Checksum => write!(f, "Invalid checksum"),
}
}
}
#[cfg(feature = "std")]
impl StdError for Error {}