clucolor/raw/
const_table.rs1macro_rules! build_const_color {
2 (
3 $name_mode:tt : $name_mode_str:expr;
4
5 $( $const_name:tt : $t:tt = $value:expr )+
6 ) => {
7
8 build_const_color!(
9 $name_mode : $name_mode_str;
10
11 $(
12 $const_name : $t = $value , stringify!($const_name), stringify!($t), stringify!($value) ;
13 )+
14 );
15
16 };
17
18 (
19 $name_mode:tt : $name_mode_str:expr;
20
21
22 $( $const_name:tt : $t:tt = $value:expr , $c_str:expr, $t_str:expr, $v_str:expr ; )+
23 ) => {
24
25 #[doc = $name_mode_str]
26 pub mod $name_mode {
27 $(
28 #[doc = "Color Const `"]
29 #[doc = $c_str]
30 #[doc = "` `"]
31 #[doc = $v_str]
32 #[doc = "` `"]
33 pub const $const_name: &$t = $value;
34 )+
35 }
36
37 };
38}
39
40
41
42build_const_color!(
43 default: "30-37: BLACK-WHITE; 90-97: BRIGHT_BLACK-BRIGHT_WHITE";
44
45 BLACK: str = "30"
46 RED: str = "31"
47 GREEN: str = "32"
48 YELLOW: str = "33"
49 BLUE: str = "34"
50 MAGENTA: str = "35"
51 CYAN: str = "36"
52 WHITE: str = "37"
53
54 BRIGHT_BLACK: str = "90"
55 BRIGHT_RED: str = "91"
56 BRIGHT_GREEN: str = "92"
57 BRIGHT_YELLOW: str = "93"
58 BRIGHT_BLUE: str = "94"
59 BRIGHT_MAGENTA: str = "95"
60 BRIGHT_CYAN: str = "96"
61 BRIGHT_WHITE: str = "97"
62);
63
64
65build_const_color!(
66 b_default: "30-37: BLACK-WHITE; 90-97: BRIGHT_BLACK-BRIGHT_WHITE";
67
68 BLACK: [u8] = b"30"
69 RED: [u8] = b"31"
70 GREEN: [u8] = b"32"
71 YELLOW: [u8] = b"33"
72 BLUE: [u8] = b"34"
73 MAGENTA: [u8] = b"35"
74 CYAN: [u8] = b"36"
75 WHITE: [u8] = b"37"
76
77 BRIGHT_BLACK: [u8] = b"90"
78 BRIGHT_RED: [u8] = b"91"
79 BRIGHT_GREEN: [u8] = b"92"
80 BRIGHT_YELLOW: [u8] = b"93"
81 BRIGHT_BLUE: [u8] = b"94"
82 BRIGHT_MAGENTA: [u8] = b"95"
83 BRIGHT_CYAN: [u8] = b"96"
84 BRIGHT_WHITE: [u8] = b"97"
85);
86
87