use crate::parser::Invalid;
use crate::Type;
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum Error {
UnknownSubType(Type, u8),
UnknownType(u8),
Invalid,
}
impl From<Invalid> for Error {
fn from(_: Invalid) -> Self {
Self::Invalid
}
}
impl core::error::Error for Error {}
impl core::fmt::Display for Error {
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
match self {
Self::UnknownSubType(t, st) => write!(f, "unknown {t:?} sub-type: {st}"),
Self::UnknownType(t) => write!(f, "unknown device path type: {t}"),
Self::Invalid => write!(f, "invalid data format"),
}
}
}