use core::fmt;
#[cfg(feature = "std")]
use std::error::Error as StdError;
#[derive(Copy, Clone, Debug, PartialEq, Eq)]
pub enum Error {
Character,
Length,
Generate,
Checksum,
Conversion,
}
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 {
Self::Character => write!(f, "Barcode data is invalid"),
Self::Length => write!(f, "Barcode data length is invalid"),
Self::Generate => write!(f, "Could not generate barcode data"),
Self::Checksum => write!(f, "Invalid checksum"),
Self::Conversion => write!(f, "Invalid data conversion"),
}
}
}
#[cfg(feature = "std")]
impl StdError for Error {}