shadowsocks/manager/
error.rs

1//! Manager API errors
2
3use std::io;
4
5use thiserror::Error;
6
7use super::protocol::Error as ProtocolError;
8
9/// Manager Error
10#[derive(Error, Debug)]
11pub enum Error {
12    #[error("{0}")]
13    IoError(#[from] io::Error),
14    #[error(transparent)]
15    ProtocolError(#[from] ProtocolError),
16}
17
18impl From<Error> for io::Error {
19    fn from(e: Error) -> Self {
20        match e {
21            Error::IoError(e) => e,
22            Error::ProtocolError(e) => From::from(e),
23        }
24    }
25}