1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
#[macro_export] macro_rules! log_on_err { ($x:expr) => { if let Err(err) = $x { tracing::error!("{}", err); } }; ($x:expr,$msg:expr) => { if let Err(err) = $x { tracing::error!($msg, err); } }; } #[macro_export] macro_rules! log_actions { ($x1:expr, $x2:expr, $x3:expr, $x4:expr, $x5:expr, $x6:expr) => { tracing::debug!( "{:<20}: [add:{}, mod:{}, del:{}, skip:{}]", format!("{}({})", $x1, $x2), $x3, $x4, $x5, $x6 ); }; } #[macro_export] macro_rules! print_cli_err { ($x:expr) => { eprintln!("{}", $x); }; } #[macro_export] macro_rules! print_cli_ok { () => { println!("\x1B[32mOk!\x1B[0m"); }; } #[macro_export] macro_rules! print_ok_msg { ($x:expr, $y:expr) => { println!("\x1B[32m{}\x1B[0m: {}", $x, $y); }; }