rustlings/src/ui.rs

29 lines
767 B
Rust
Raw Normal View History

2024-03-15 12:51:24 +00:00
macro_rules! print_emoji {
2024-03-21 07:18:50 +00:00
($emoji:expr, $sign:expr, $color: ident, $fmt:literal, $ex:expr) => {{
use console::{style, Emoji};
2021-04-18 13:40:47 +00:00
use std::env;
let formatstr = format!($fmt, $ex);
if env::var("NO_EMOJI").is_ok() {
2024-03-15 12:51:24 +00:00
println!("{} {}", style($sign).$color(), style(formatstr).$color());
} else {
println!(
"{} {}",
2024-03-15 12:51:24 +00:00
style(Emoji($emoji, $sign)).$color(),
style(formatstr).$color()
);
}
}};
}
2024-03-15 12:51:24 +00:00
macro_rules! warn {
($fmt:literal, $ex:expr) => {{
print_emoji!("⚠️ ", "!", red, $fmt, $ex);
}};
}
macro_rules! success {
($fmt:literal, $ex:expr) => {{
2024-03-15 12:51:24 +00:00
print_emoji!("", "", green, $fmt, $ex);
}};
}