ckb_app_config/
exit_code.rs1use std::io;
2
3#[repr(i32)]
5#[derive(Copy, Clone, Debug, PartialEq, Eq)]
6pub enum ExitCode {
7 Cli = 64,
9 Config = 65,
11 IO = 66,
13 Failure = 113,
15}
16
17impl ExitCode {
18 pub fn into(self) -> i32 {
20 self as i32
21 }
22}
23
24impl From<io::Error> for ExitCode {
25 fn from(err: io::Error) -> ExitCode {
26 eprintln!("IO Error: {err:?}");
27 ExitCode::IO
28 }
29}
30
31impl From<toml::de::Error> for ExitCode {
32 fn from(err: toml::de::Error) -> ExitCode {
33 eprintln!("Config Error: {err:?}");
34 ExitCode::Config
35 }
36}
37
38impl From<ckb_logger::SetLoggerError> for ExitCode {
39 fn from(err: ckb_logger::SetLoggerError) -> ExitCode {
40 eprintln!("Config Error: {err:?}");
41 ExitCode::Config
42 }
43}