liverust_lib/netio/
bytes_errors.rs1use std::io;
2use tokio::time::Elapsed;
3use super::netio_errors::{NetIOError,NetIOErrorValue};
4
5pub enum BytesReadErrorValue {
6 NotEnoughBytes,
7 EmptyStream,
8 IO(io::Error),
9 TimeoutError(Elapsed),
10}
11pub struct BytesReadError {
12 pub value: BytesReadErrorValue,
13}
14
15impl From<BytesReadErrorValue> for BytesReadError {
16 fn from(val: BytesReadErrorValue) -> Self {
17 BytesReadError { value: val }
18 }
19}
20
21impl From<io::Error> for BytesReadError {
22 fn from(error: io::Error) -> Self {
23 BytesReadError {
24 value: BytesReadErrorValue::IO(error),
25 }
26 }
27}
28
29impl From<Elapsed> for BytesReadError {
30 fn from(error: Elapsed) -> Self {
31 BytesReadError {
32 value: BytesReadErrorValue::TimeoutError(error),
33 }
34 }
35}
36
37pub struct BytesWriteError {
38 pub value: BytesWriteErrorValue,
39}
40
41pub enum BytesWriteErrorValue {
42 IO(io::Error),
43 NetIOError(NetIOError),
44}
45
46impl From<io::Error> for BytesWriteError {
47 fn from(error: io::Error) -> Self {
48 BytesWriteError {
49 value: BytesWriteErrorValue::IO(error),
50 }
51 }
52}
53
54impl From<NetIOError> for BytesWriteError {
55 fn from(error: NetIOError) -> Self {
56 BytesWriteError {
57 value: BytesWriteErrorValue::NetIOError(error),
58 }
59 }
60}
61