1use colored::*;
5
6pub trait Logger {
7 fn info(msg: &str);
8 fn warn(msg: &str);
9 fn error(msg: &str);
10 fn success(msg: &str);
11 fn log(msg: &str);
12}
13pub struct CliLogger;
14impl Logger for CliLogger {
15 fn info(msg: &str) {
16 println!("{} {}", "[INFO ]".blue(), msg);
17 }
18
19 fn warn(msg: &str) {
20 println!("{} {}", "[WARN ]".yellow(), msg);
21 }
22
23 fn error(msg: &str) {
24 println!("{} {}", "[ERROR]".red(), msg);
25 }
26
27 fn success(msg: &str) {
28 println!("{} {}", "[ OK ]".green(), msg);
29 }
30
31 fn log(msg: &str) {
32 println!("{} {}", "[ LOG ]".white(), msg);
33 }
34}