1use std::time::Duration;
4use tcp_handler::protocols::common::{PacketError, StarterError};
5use thiserror::Error;
6
7#[derive(Error, Debug)]
9pub enum Error {
10 #[error("Network timeout: {} after {1:?}.", if *.0 { "Connecting" } else { "Receiving" })]
12 Timeout(bool, Duration),
13
14 #[error("During io packet: {0}")]
16 StarterError(#[from] StarterError),
17
18 #[error("During io packet: {0}")]
20 PacketError(#[from] PacketError),
21
22 #[error("During read/write data: {0}")]
24 DataError(#[from] std::io::Error),
25
26 #[error("The server is not available.")]
28 ServerDenied,
29}
30
31pub type Result<T> = std::result::Result<T, Error>;