#[derive(Debug, Clone, PartialEq)]
pub enum Ad5700Error<E> {
Uart(E),
NoCarrier,
Timeout,
}
#[derive(Debug)]
pub enum HartError<E> {
Modem(Ad5700Error<E>),
Encode(hart_protocol::error::EncodeError),
Decode(hart_protocol::error::DecodeError),
Timeout,
}
impl<E> From<Ad5700Error<E>> for HartError<E> {
fn from(e: Ad5700Error<E>) -> Self {
HartError::Modem(e)
}
}
impl<E> From<hart_protocol::error::EncodeError> for HartError<E> {
fn from(e: hart_protocol::error::EncodeError) -> Self {
HartError::Encode(e)
}
}
impl<E> From<hart_protocol::error::DecodeError> for HartError<E> {
fn from(e: hart_protocol::error::DecodeError) -> Self {
HartError::Decode(e)
}
}