color_output/macro/
proc_macro.rs1#[macro_export]
62macro_rules! output_macro {
63 ($($output:expr),*) => {
64 $(
65 $output.output();
66 )*
67 };
68}
69
70#[macro_export]
71macro_rules! print_success {
72 ($($data:expr),*) => {{
73 use crate::*;
74 let binding: String = format!("[{} => success]", current_time());
75 let mut time_output_builder: OutputBuilder<'_> = OutputBuilder::new();
76 let time_output: Output<'_> = time_output_builder
77 .text(&binding)
78 .blod(true)
79 .bg_color(ColorType::Rgb(0,255,0))
80 .color(ColorType::Color256(0xffffff))
81 .build();
82 let mut output_list_builder = OutputListBuilder::new();
83 output_list_builder.add(time_output);
84 $(
85 let text = $data.to_string();
86 let mut text_output_builder: OutputBuilder<'_> = OutputBuilder::new();
87 let text_output: Output<'_> = text_output_builder
88 .text(&text)
89 .blod(true)
90 .color(ColorType::Rgb(0,255,0))
91 .endl(false)
92 .build();
93 output_list_builder.add(text_output);
94 )*
95 output_list_builder.run();
96 }};
97}
98
99#[macro_export]
100macro_rules! print_warning {
101 ($($data:expr),*) => {{
102 use crate::*;
103 let binding: String = format!("[{} => warning]", current_time());
104 let mut time_output_builder: OutputBuilder<'_> = OutputBuilder::new();
105 let time_output: Output<'_> = time_output_builder
106 .text(&binding)
107 .blod(true)
108 .bg_color(ColorType::Rgb(255, 255, 0))
109 .color(ColorType::Color256(0xffffff))
110 .build();
111 let mut output_list_builder = OutputListBuilder::new();
112 output_list_builder.add(time_output);
113 $(
114 let text = $data.to_string();
115 let mut text_output_builder: OutputBuilder<'_> = OutputBuilder::new();
116 let text_output: Output<'_> = text_output_builder
117 .text(&text)
118 .blod(true)
119 .color(ColorType::Rgb(255, 255, 0))
120 .endl(false)
121 .build();
122 output_list_builder.add(text_output);
123 )*
124 output_list_builder.run();
125 }};
126}
127
128#[macro_export]
129macro_rules! print_error {
130 ($($data:expr),*) => {{
131 use crate::*;
132 let binding: String = format!("[{} => error]", current_time());
133 let mut time_output_builder: OutputBuilder<'_> = OutputBuilder::new();
134 let time_output: Output<'_> = time_output_builder
135 .text(&binding)
136 .blod(true)
137 .bg_color(ColorType::Rgb(255,0,0))
138 .color(ColorType::Color256(0xffffff))
139 .build();
140 let mut output_list_builder = OutputListBuilder::new();
141 output_list_builder.add(time_output);
142 $(
143 let text = $data.to_string();
144 let mut text_output_builder: OutputBuilder<'_> = OutputBuilder::new();
145 let text_output: Output<'_> = text_output_builder
146 .text(&text)
147 .blod(true)
148 .color(ColorType::Rgb(255,0,0))
149 .endl(false)
150 .build();
151 output_list_builder.add(text_output);
152 )*
153 output_list_builder.run();
154 }};
155}
156
157#[macro_export]
158macro_rules! println_success {
159 ($($data:expr),*) => {{
160 use crate::*;
161 let binding: String = format!("[{} => success]", current_time());
162 let mut time_output_builder: OutputBuilder<'_> = OutputBuilder::new();
163 let time_output: Output<'_> = time_output_builder
164 .text(&binding)
165 .blod(true)
166 .bg_color(ColorType::Rgb(0,255,0))
167 .color(ColorType::Color256(0xffffff))
168 .build();
169 let mut output_list_builder = OutputListBuilder::new();
170 output_list_builder.add(time_output);
171 $(
172 let text = $data.to_string();
173 let mut text_output_builder: OutputBuilder<'_> = OutputBuilder::new();
174 let text_output: Output<'_> = text_output_builder
175 .text(&text)
176 .blod(true)
177 .color(ColorType::Rgb(0,255,0))
178 .endl(false)
179 .build();
180 output_list_builder.add(text_output);
181 )*
182 let mut text_endl_output_builder: OutputBuilder<'_> = OutputBuilder::new();
183 let text_endl_output: Output<'_> = text_endl_output_builder.text("\n").endl(false).build();
184 output_list_builder.add(text_endl_output);
185 output_list_builder.run();
186 }};
187}
188
189#[macro_export]
190macro_rules! println_warning {
191 ($($data:expr),*) => {{
192 use crate::*;
193 let binding: String = format!("[{} => warning]", current_time());
194 let mut time_output_builder: OutputBuilder<'_> = OutputBuilder::new();
195 let time_output: Output<'_> = time_output_builder
196 .text(&binding)
197 .blod(true)
198 .bg_color(ColorType::Rgb(255, 255, 0))
199 .color(ColorType::Color256(0xffffff))
200 .build();
201 let mut output_list_builder = OutputListBuilder::new();
202 output_list_builder.add(time_output);
203 $(
204 let text = $data.to_string();
205 let mut text_output_builder: OutputBuilder<'_> = OutputBuilder::new();
206 let text_output: Output<'_> = text_output_builder
207 .text(&text)
208 .blod(true)
209 .color(ColorType::Rgb(255, 255, 0))
210 .endl(false)
211 .build();
212 output_list_builder.add(text_output);
213 )*
214 let mut text_endl_output_builder: OutputBuilder<'_> = OutputBuilder::new();
215 let text_endl_output: Output<'_> = text_endl_output_builder.text("\n").endl(false).build();
216 output_list_builder.add(text_endl_output);
217 output_list_builder.run();
218 }};
219}
220
221#[macro_export]
222macro_rules! println_error {
223 ($($data:expr),*) => {{
224 use crate::*;
225 let binding: String = format!("[{} => error]", current_time());
226 let mut time_output_builder: OutputBuilder<'_> = OutputBuilder::new();
227 let time_output: Output<'_> = time_output_builder
228 .text(&binding)
229 .blod(true)
230 .bg_color(ColorType::Rgb(255,0,0))
231 .color(ColorType::Color256(0xffffff))
232 .build();
233 let mut output_list_builder = OutputListBuilder::new();
234 output_list_builder.add(time_output);
235 $(
236 let text = $data.to_string();
237 let mut text_output_builder: OutputBuilder<'_> = OutputBuilder::new();
238 let text_output: Output<'_> = text_output_builder
239 .text(&text)
240 .blod(true)
241 .color(ColorType::Rgb(255,0,0))
242 .endl(false)
243 .build();
244 output_list_builder.add(text_output);
245 )*
246 let mut text_endl_output_builder: OutputBuilder<'_> = OutputBuilder::new();
247 let text_endl_output: Output<'_> = text_endl_output_builder.text("\n").endl(false).build();
248 output_list_builder.add(text_endl_output);
249 output_list_builder.run();
250 }};
251}