rust_colors/colors.rs
1macro_rules! color {
2 ($($name:ident, $value:expr);*;) => {
3 #[derive(Debug, PartialEq)]
4 pub enum Colors {
5 $($name,)*
6 }
7
8 impl Colors {
9 pub fn assign(&self) -> &str {
10 match *self {
11 $(Colors::$name => $value,)*
12 }
13 }
14 }
15 };
16}
17
18color! {
19 Black, "[30m";
20 Red, "[31m";
21 Green, "[32m";
22 Yellow, "[33m";
23 Blue, "[34m";
24 Purple, "[35m";
25 Cyan, "[36m";
26 White, "[37m";
27 Default, "[0m";
28}