1mod request_packet;
4pub use request_packet::*;
5
6mod response_packet;
7pub use response_packet::*;
8
9use crate::Exception;
10
11
12#[derive(Debug)]
15pub enum Error {
16 Exception(Exception),
18
19 Request(RequestPacketError),
22
23 Response(ResponsePacketError),
26
27 IO(std::io::Error),
29}
30
31
32impl core::fmt::Display for Error {
33 fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
34 match self {
35 Error::Exception(exception) => write!(f, "device responsed {exception}"),
36 Error::Request(request_packet_error) => write!(f, "{request_packet_error}"),
37 Error::Response(response_packet_error) => write!(f, "{response_packet_error}"),
38 Error::IO(error) => write!(f, "{error}"),
39 }
40 }
41}
42
43
44impl core::error::Error for Error {}