1
0
mirror of https://github.com/jht5945/rust_util.git synced 2025-12-27 15:40:03 +08:00

first commit

This commit is contained in:
2019-07-21 12:35:18 +08:00
parent a5429d54fb
commit 8dd2f04260
4 changed files with 336 additions and 0 deletions

25
src/lib.rs Normal file
View File

@@ -0,0 +1,25 @@
extern crate term;
pub type XResult<T> = Result<T, Box<dyn std::error::Error>>;
pub enum MessageType { INFO, OK, WARN, ERROR, }
pub fn print_message_ex(color: Option<term::color::Color>, h: &str, message: &str) {
let mut t = term::stdout().unwrap();
match color {
Some(c) => t.fg(c).unwrap(),
None => (),
}
write!(t, "{}", h).unwrap();
t.reset().unwrap();
println!(" {}", message);
}
pub fn print_message(mt: MessageType, message: &str) {
match mt {
MessageType::OK => print_message_ex(Some(term::color::GREEN), "[OK ]", message),
MessageType::WARN => print_message_ex(Some(term::color::YELLOW), "[WARN ]", message),
MessageType::ERROR => print_message_ex(Some(term::color::RED), "[ERROR]", message),
MessageType::INFO => print_message_ex(None, "[INFO]", message),
}
}