1#![doc = include_str!("../README.md")]
2
3#[doc(hidden)]
4pub use tracing::*;
5
6#[macro_export]
8macro_rules! error {
9 (name: $name:expr, target: $target:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
11 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::ERROR, { $($field)* }, $($arg)*)
12 );
13 (name: $name:expr, target: $target:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
14 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::ERROR, { $($k).+ $($field)* })
15 );
16 (name: $name:expr, target: $target:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
17 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::ERROR, { ?$($k).+ $($field)* })
18 );
19 (name: $name:expr, target: $target:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
20 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::ERROR, { %$($k).+ $($field)* })
21 );
22 (name: $name:expr, target: $target:expr, parent: $parent:expr, $($arg:tt)+ ) => (
23 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::ERROR, {}, $($arg)+)
24 );
25
26 (name: $name:expr, target: $target:expr, { $($field:tt)* }, $($arg:tt)* ) => (
28 $crate::event!(name: $name, target: $target, $crate::Level::ERROR, { $($field)* }, $($arg)*)
29 );
30 (name: $name:expr, target: $target:expr, $($k:ident).+ $($field:tt)* ) => (
31 $crate::event!(name: $name, target: $target, $crate::Level::ERROR, { $($k).+ $($field)* })
32 );
33 (name: $name:expr, target: $target:expr, ?$($k:ident).+ $($field:tt)* ) => (
34 $crate::event!(name: $name, target: $target, $crate::Level::ERROR, { ?$($k).+ $($field)* })
35 );
36 (name: $name:expr, target: $target:expr, %$($k:ident).+ $($field:tt)* ) => (
37 $crate::event!(name: $name, target: $target, $crate::Level::ERROR, { %$($k).+ $($field)* })
38 );
39 (name: $name:expr, target: $target:expr, $($arg:tt)+ ) => (
40 $crate::event!(name: $name, target: $target, $crate::Level::ERROR, {}, $($arg)+)
41 );
42
43 (target: $target:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
45 $crate::event!(target: $target, parent: $parent, $crate::Level::ERROR, { $($field)* }, $($arg)*)
46 );
47 (target: $target:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
48 $crate::event!(target: $target, parent: $parent, $crate::Level::ERROR, { $($k).+ $($field)* })
49 );
50 (target: $target:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
51 $crate::event!(target: $target, parent: $parent, $crate::Level::ERROR, { ?$($k).+ $($field)* })
52 );
53 (target: $target:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
54 $crate::event!(target: $target, parent: $parent, $crate::Level::ERROR, { %$($k).+ $($field)* })
55 );
56 (target: $target:expr, parent: $parent:expr, $($arg:tt)+ ) => (
57 $crate::event!(target: $target, parent: $parent, $crate::Level::ERROR, {}, $($arg)+)
58 );
59
60 (name: $name:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
62 $crate::event!(name: $name, parent: $parent, $crate::Level::ERROR, { $($field)* }, $($arg)*)
63 );
64 (name: $name:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
65 $crate::event!(name: $name, parent: $parent, $crate::Level::ERROR, { $($k).+ $($field)* })
66 );
67 (name: $name:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
68 $crate::event!(name: $name, parent: $parent, $crate::Level::ERROR, { ?$($k).+ $($field)* })
69 );
70 (name: $name:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
71 $crate::event!(name: $name, parent: $parent, $crate::Level::ERROR, { %$($k).+ $($field)* })
72 );
73 (name: $name:expr, parent: $parent:expr, $($arg:tt)+ ) => (
74 $crate::event!(name: $name, parent: $parent, $crate::Level::ERROR, {}, $($arg)+)
75 );
76
77 (name: $name:expr, { $($field:tt)* }, $($arg:tt)* ) => (
79 $crate::event!(name: $name, $crate::Level::ERROR, { $($field)* }, $($arg)*)
80 );
81 (name: $name:expr, $($k:ident).+ $($field:tt)* ) => (
82 $crate::event!(name: $name, $crate::Level::ERROR, { $($k).+ $($field)* })
83 );
84 (name: $name:expr, ?$($k:ident).+ $($field:tt)* ) => (
85 $crate::event!(name: $name, $crate::Level::ERROR, { ?$($k).+ $($field)* })
86 );
87 (name: $name:expr, %$($k:ident).+ $($field:tt)* ) => (
88 $crate::event!(name: $name, $crate::Level::ERROR, { %$($k).+ $($field)* })
89 );
90 (name: $name:expr, $($arg:tt)+ ) => (
91 $crate::event!(name: $name, $crate::Level::ERROR, {}, $($arg)+)
92 );
93
94 (target: $target:expr, { $($field:tt)* }, $($arg:tt)* ) => (
96 $crate::event!(target: $target, $crate::Level::ERROR, { $($field)* }, $($arg)*)
97 );
98 (target: $target:expr, $($k:ident).+ $($field:tt)* ) => (
99 $crate::event!(target: $target, $crate::Level::ERROR, { $($k).+ $($field)* })
100 );
101 (target: $target:expr, ?$($k:ident).+ $($field:tt)* ) => (
102 $crate::event!(target: $target, $crate::Level::ERROR, { ?$($k).+ $($field)* })
103 );
104 (target: $target:expr, %$($k:ident).+ $($field:tt)* ) => (
105 $crate::event!(target: $target, $crate::Level::ERROR, { %$($k).+ $($field)* })
106 );
107 (target: $target:expr, $($arg:tt)+ ) => (
108 $crate::event!(target: $target, $crate::Level::ERROR, {}, $($arg)+)
109 );
110
111 (parent: $parent:expr, { $($field:tt)+ }, $($arg:tt)+ ) => (
113 $crate::event!(
114 target: module_path!(),
115 parent: $parent,
116 $crate::Level::ERROR,
117 { $($field)+ },
118 $($arg)+
119 )
120 );
121 (parent: $parent:expr, $($k:ident).+ = $($field:tt)*) => (
122 $crate::event!(
123 target: module_path!(),
124 parent: $parent,
125 $crate::Level::ERROR,
126 { $($k).+ = $($field)*}
127 )
128 );
129 (parent: $parent:expr, ?$($k:ident).+ = $($field:tt)*) => (
130 $crate::event!(
131 target: module_path!(),
132 parent: $parent,
133 $crate::Level::ERROR,
134 { ?$($k).+ = $($field)*}
135 )
136 );
137 (parent: $parent:expr, %$($k:ident).+ = $($field:tt)*) => (
138 $crate::event!(
139 target: module_path!(),
140 parent: $parent,
141 $crate::Level::ERROR,
142 { %$($k).+ = $($field)*}
143 )
144 );
145 (parent: $parent:expr, $($k:ident).+, $($field:tt)*) => (
146 $crate::event!(
147 target: module_path!(),
148 parent: $parent,
149 $crate::Level::ERROR,
150 { $($k).+, $($field)*}
151 )
152 );
153 (parent: $parent:expr, ?$($k:ident).+, $($field:tt)*) => (
154 $crate::event!(
155 target: module_path!(),
156 parent: $parent,
157 $crate::Level::ERROR,
158 { ?$($k).+, $($field)*}
159 )
160 );
161 (parent: $parent:expr, %$($k:ident).+, $($field:tt)*) => (
162 $crate::event!(
163 target: module_path!(),
164 parent: $parent,
165 $crate::Level::ERROR,
166 { %$($k).+, $($field)*}
167 )
168 );
169 (parent: $parent:expr, $($arg:tt)+) => (
170 $crate::event!(
171 target: module_path!(),
172 parent: $parent,
173 $crate::Level::ERROR,
174 {},
175 $($arg)+
176 )
177 );
178
179 ({ $($field:tt)+ }, $($arg:tt)+ ) => (
181 $crate::event!(
182 target: module_path!(),
183 $crate::Level::ERROR,
184 { $($field)+ },
185 $($arg)+
186 )
187 );
188 ($($k:ident).+ = $($field:tt)*) => (
189 $crate::event!(
190 target: module_path!(),
191 $crate::Level::ERROR,
192 { $($k).+ = $($field)*}
193 )
194 );
195 (?$($k:ident).+ = $($field:tt)*) => (
196 $crate::event!(
197 target: module_path!(),
198 $crate::Level::ERROR,
199 { ?$($k).+ = $($field)*}
200 )
201 );
202 (%$($k:ident).+ = $($field:tt)*) => (
203 $crate::event!(
204 target: module_path!(),
205 $crate::Level::ERROR,
206 { %$($k).+ = $($field)*}
207 )
208 );
209 ($($k:ident).+, $($field:tt)*) => (
210 $crate::event!(
211 target: module_path!(),
212 $crate::Level::ERROR,
213 { $($k).+, $($field)*}
214 )
215 );
216 (?$($k:ident).+, $($field:tt)*) => (
217 $crate::event!(
218 target: module_path!(),
219 $crate::Level::ERROR,
220 { ?$($k).+, $($field)*}
221 )
222 );
223 (%$($k:ident).+, $($field:tt)*) => (
224 $crate::event!(
225 target: module_path!(),
226 $crate::Level::ERROR,
227 { %$($k).+, $($field)*}
228 )
229 );
230 (?$($k:ident).+) => (
231 $crate::event!(
232 target: module_path!(),
233 $crate::Level::ERROR,
234 { ?$($k).+ }
235 )
236 );
237 (%$($k:ident).+) => (
238 $crate::event!(
239 target: module_path!(),
240 $crate::Level::ERROR,
241 { %$($k).+ }
242 )
243 );
244 ($($k:ident).+) => (
245 $crate::event!(
246 target: module_path!(),
247 $crate::Level::ERROR,
248 { $($k).+ }
249 )
250 );
251 ($($arg:tt)+) => (
252 $crate::event!(
253 target: module_path!(),
254 $crate::Level::ERROR,
255 $($arg)+
256 )
257 );
258}
259
260#[macro_export]
262macro_rules! error_span {
263 (target: $target:expr, parent: $parent:expr, $name:expr, $($field:tt)*) => {
264 $crate::span!(
265 target: $target,
266 parent: $parent,
267 $crate::Level::ERROR,
268 $name,
269 $($field)*
270 )
271 };
272 (target: $target:expr, parent: $parent:expr, $name:expr) => {
273 $crate::error_span!(target: $target, parent: $parent, $name,)
274 };
275 (parent: $parent:expr, $name:expr, $($field:tt)*) => {
276 $crate::span!(
277 target: module_path!(),
278 parent: $parent,
279 $crate::Level::ERROR,
280 $name,
281 $($field)*
282 )
283 };
284 (parent: $parent:expr, $name:expr) => {
285 $crate::error_span!(parent: $parent, $name,)
286 };
287 (target: $target:expr, $name:expr, $($field:tt)*) => {
288 $crate::span!(
289 target: $target,
290 $crate::Level::ERROR,
291 $name,
292 $($field)*
293 )
294 };
295 (target: $target:expr, $name:expr) => {
296 $crate::error_span!(target: $target, $name,)
297 };
298 ($name:expr, $($field:tt)*) => {
299 $crate::span!(
300 target: module_path!(),
301 $crate::Level::ERROR,
302 $name,
303 $($field)*
304 )
305 };
306 ($name:expr) => {$crate::error_span!($name,)};
307}
308
309#[macro_export]
311macro_rules! warn {
312 (name: $name:expr, target: $target:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
314 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::WARN, { $($field)* }, $($arg)*)
315 );
316 (name: $name:expr, target: $target:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
317 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::WARN, { $($k).+ $($field)* })
318 );
319 (name: $name:expr, target: $target:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
320 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::WARN, { ?$($k).+ $($field)* })
321 );
322 (name: $name:expr, target: $target:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
323 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::WARN, { %$($k).+ $($field)* })
324 );
325 (name: $name:expr, target: $target:expr, parent: $parent:expr, $($arg:tt)+ ) => (
326 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::WARN, {}, $($arg)+)
327 );
328
329 (name: $name:expr, target: $target:expr, { $($field:tt)* }, $($arg:tt)* ) => (
331 $crate::event!(name: $name, target: $target, $crate::Level::WARN, { $($field)* }, $($arg)*)
332 );
333 (name: $name:expr, target: $target:expr, $($k:ident).+ $($field:tt)* ) => (
334 $crate::event!(name: $name, target: $target, $crate::Level::WARN, { $($k).+ $($field)* })
335 );
336 (name: $name:expr, target: $target:expr, ?$($k:ident).+ $($field:tt)* ) => (
337 $crate::event!(name: $name, target: $target, $crate::Level::WARN, { ?$($k).+ $($field)* })
338 );
339 (name: $name:expr, target: $target:expr, %$($k:ident).+ $($field:tt)* ) => (
340 $crate::event!(name: $name, target: $target, $crate::Level::WARN, { %$($k).+ $($field)* })
341 );
342 (name: $name:expr, target: $target:expr, $($arg:tt)+ ) => (
343 $crate::event!(name: $name, target: $target, $crate::Level::WARN, {}, $($arg)+)
344 );
345
346 (target: $target:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
348 $crate::event!(target: $target, parent: $parent, $crate::Level::WARN, { $($field)* }, $($arg)*)
349 );
350 (target: $target:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
351 $crate::event!(target: $target, parent: $parent, $crate::Level::WARN, { $($k).+ $($field)* })
352 );
353 (target: $target:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
354 $crate::event!(target: $target, parent: $parent, $crate::Level::WARN, { ?$($k).+ $($field)* })
355 );
356 (target: $target:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
357 $crate::event!(target: $target, parent: $parent, $crate::Level::WARN, { %$($k).+ $($field)* })
358 );
359 (target: $target:expr, parent: $parent:expr, $($arg:tt)+ ) => (
360 $crate::event!(target: $target, parent: $parent, $crate::Level::WARN, {}, $($arg)+)
361 );
362
363 (name: $name:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
365 $crate::event!(name: $name, parent: $parent, $crate::Level::WARN, { $($field)* }, $($arg)*)
366 );
367 (name: $name:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
368 $crate::event!(name: $name, parent: $parent, $crate::Level::WARN, { $($k).+ $($field)* })
369 );
370 (name: $name:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
371 $crate::event!(name: $name, parent: $parent, $crate::Level::WARN, { ?$($k).+ $($field)* })
372 );
373 (name: $name:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
374 $crate::event!(name: $name, parent: $parent, $crate::Level::WARN, { %$($k).+ $($field)* })
375 );
376 (name: $name:expr, parent: $parent:expr, $($arg:tt)+ ) => (
377 $crate::event!(name: $name, parent: $parent, $crate::Level::WARN, {}, $($arg)+)
378 );
379
380 (name: $name:expr, { $($field:tt)* }, $($arg:tt)* ) => (
382 $crate::event!(name: $name, $crate::Level::WARN, { $($field)* }, $($arg)*)
383 );
384 (name: $name:expr, $($k:ident).+ $($field:tt)* ) => (
385 $crate::event!(name: $name, $crate::Level::WARN, { $($k).+ $($field)* })
386 );
387 (name: $name:expr, ?$($k:ident).+ $($field:tt)* ) => (
388 $crate::event!(name: $name, $crate::Level::WARN, { ?$($k).+ $($field)* })
389 );
390 (name: $name:expr, %$($k:ident).+ $($field:tt)* ) => (
391 $crate::event!(name: $name, $crate::Level::WARN, { %$($k).+ $($field)* })
392 );
393 (name: $name:expr, $($arg:tt)+ ) => (
394 $crate::event!(name: $name, $crate::Level::WARN, {}, $($arg)+)
395 );
396
397 (target: $target:expr, { $($field:tt)* }, $($arg:tt)* ) => (
399 $crate::event!(target: $target, $crate::Level::WARN, { $($field)* }, $($arg)*)
400 );
401 (target: $target:expr, $($k:ident).+ $($field:tt)* ) => (
402 $crate::event!(target: $target, $crate::Level::WARN, { $($k).+ $($field)* })
403 );
404 (target: $target:expr, ?$($k:ident).+ $($field:tt)* ) => (
405 $crate::event!(target: $target, $crate::Level::WARN, { ?$($k).+ $($field)* })
406 );
407 (target: $target:expr, %$($k:ident).+ $($field:tt)* ) => (
408 $crate::event!(target: $target, $crate::Level::WARN, { %$($k).+ $($field)* })
409 );
410 (target: $target:expr, $($arg:tt)+ ) => (
411 $crate::event!(target: $target, $crate::Level::WARN, {}, $($arg)+)
412 );
413
414 (parent: $parent:expr, { $($field:tt)+ }, $($arg:tt)+ ) => (
416 $crate::event!(
417 target: module_path!(),
418 parent: $parent,
419 $crate::Level::WARN,
420 { $($field)+ },
421 $($arg)+
422 )
423 );
424 (parent: $parent:expr, $($k:ident).+ = $($field:tt)*) => (
425 $crate::event!(
426 target: module_path!(),
427 parent: $parent,
428 $crate::Level::WARN,
429 { $($k).+ = $($field)*}
430 )
431 );
432 (parent: $parent:expr, ?$($k:ident).+ = $($field:tt)*) => (
433 $crate::event!(
434 target: module_path!(),
435 parent: $parent,
436 $crate::Level::WARN,
437 { ?$($k).+ = $($field)*}
438 )
439 );
440 (parent: $parent:expr, %$($k:ident).+ = $($field:tt)*) => (
441 $crate::event!(
442 target: module_path!(),
443 parent: $parent,
444 $crate::Level::WARN,
445 { %$($k).+ = $($field)*}
446 )
447 );
448 (parent: $parent:expr, $($k:ident).+, $($field:tt)*) => (
449 $crate::event!(
450 target: module_path!(),
451 parent: $parent,
452 $crate::Level::WARN,
453 { $($k).+, $($field)*}
454 )
455 );
456 (parent: $parent:expr, ?$($k:ident).+, $($field:tt)*) => (
457 $crate::event!(
458 target: module_path!(),
459 parent: $parent,
460 $crate::Level::WARN,
461 { ?$($k).+, $($field)*}
462 )
463 );
464 (parent: $parent:expr, %$($k:ident).+, $($field:tt)*) => (
465 $crate::event!(
466 target: module_path!(),
467 parent: $parent,
468 $crate::Level::WARN,
469 { %$($k).+, $($field)*}
470 )
471 );
472 (parent: $parent:expr, $($arg:tt)+) => (
473 $crate::event!(
474 target: module_path!(),
475 parent: $parent,
476 $crate::Level::WARN,
477 {},
478 $($arg)+
479 )
480 );
481
482 ({ $($field:tt)+ }, $($arg:tt)+ ) => (
484 $crate::event!(
485 target: module_path!(),
486 $crate::Level::WARN,
487 { $($field)+ },
488 $($arg)+
489 )
490 );
491 ($($k:ident).+ = $($field:tt)*) => (
492 $crate::event!(
493 target: module_path!(),
494 $crate::Level::WARN,
495 { $($k).+ = $($field)*}
496 )
497 );
498 (?$($k:ident).+ = $($field:tt)*) => (
499 $crate::event!(
500 target: module_path!(),
501 $crate::Level::WARN,
502 { ?$($k).+ = $($field)*}
503 )
504 );
505 (%$($k:ident).+ = $($field:tt)*) => (
506 $crate::event!(
507 target: module_path!(),
508 $crate::Level::WARN,
509 { %$($k).+ = $($field)*}
510 )
511 );
512 ($($k:ident).+, $($field:tt)*) => (
513 $crate::event!(
514 target: module_path!(),
515 $crate::Level::WARN,
516 { $($k).+, $($field)*}
517 )
518 );
519 (?$($k:ident).+, $($field:tt)*) => (
520 $crate::event!(
521 target: module_path!(),
522 $crate::Level::WARN,
523 { ?$($k).+, $($field)*}
524 )
525 );
526 (%$($k:ident).+, $($field:tt)*) => (
527 $crate::event!(
528 target: module_path!(),
529 $crate::Level::WARN,
530 { %$($k).+, $($field)*}
531 )
532 );
533 (?$($k:ident).+) => (
534 $crate::event!(
535 target: module_path!(),
536 $crate::Level::WARN,
537 { ?$($k).+ }
538 )
539 );
540 (%$($k:ident).+) => (
541 $crate::event!(
542 target: module_path!(),
543 $crate::Level::WARN,
544 { %$($k).+ }
545 )
546 );
547 ($($k:ident).+) => (
548 $crate::event!(
549 target: module_path!(),
550 $crate::Level::WARN,
551 { $($k).+ }
552 )
553 );
554 ($($arg:tt)+) => (
555 $crate::event!(
556 target: module_path!(),
557 $crate::Level::WARN,
558 $($arg)+
559 )
560 );
561}
562
563#[macro_export]
565macro_rules! warn_span {
566 (target: $target:expr, parent: $parent:expr, $name:expr, $($field:tt)*) => {
567 $crate::span!(
568 target: $target,
569 parent: $parent,
570 $crate::Level::WARN,
571 $name,
572 $($field)*
573 )
574 };
575 (target: $target:expr, parent: $parent:expr, $name:expr) => {
576 $crate::warn_span!(target: $target, parent: $parent, $name,)
577 };
578 (parent: $parent:expr, $name:expr, $($field:tt)*) => {
579 $crate::span!(
580 target: module_path!(),
581 parent: $parent,
582 $crate::Level::WARN,
583 $name,
584 $($field)*
585 )
586 };
587 (parent: $parent:expr, $name:expr) => {
588 $crate::warn_span!(parent: $parent, $name,)
589 };
590 (target: $target:expr, $name:expr, $($field:tt)*) => {
591 $crate::span!(
592 target: $target,
593 $crate::Level::WARN,
594 $name,
595 $($field)*
596 )
597 };
598 (target: $target:expr, $name:expr) => {
599 $crate::warn_span!(target: $target, $name,)
600 };
601 ($name:expr, $($field:tt)*) => {
602 $crate::span!(
603 target: module_path!(),
604 $crate::Level::WARN,
605 $name,
606 $($field)*
607 )
608 };
609 ($name:expr) => {$crate::warn_span!($name,)};
610}
611
612#[macro_export]
614macro_rules! info {
615 (name: $name:expr, target: $target:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
617 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::INFO, { $($field)* }, $($arg)*)
618 );
619 (name: $name:expr, target: $target:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
620 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::INFO, { $($k).+ $($field)* })
621 );
622 (name: $name:expr, target: $target:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
623 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::INFO, { ?$($k).+ $($field)* })
624 );
625 (name: $name:expr, target: $target:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
626 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::INFO, { %$($k).+ $($field)* })
627 );
628 (name: $name:expr, target: $target:expr, parent: $parent:expr, $($arg:tt)+ ) => (
629 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::INFO, {}, $($arg)+)
630 );
631
632 (name: $name:expr, target: $target:expr, { $($field:tt)* }, $($arg:tt)* ) => (
634 $crate::event!(name: $name, target: $target, $crate::Level::INFO, { $($field)* }, $($arg)*)
635 );
636 (name: $name:expr, target: $target:expr, $($k:ident).+ $($field:tt)* ) => (
637 $crate::event!(name: $name, target: $target, $crate::Level::INFO, { $($k).+ $($field)* })
638 );
639 (name: $name:expr, target: $target:expr, ?$($k:ident).+ $($field:tt)* ) => (
640 $crate::event!(name: $name, target: $target, $crate::Level::INFO, { ?$($k).+ $($field)* })
641 );
642 (name: $name:expr, target: $target:expr, %$($k:ident).+ $($field:tt)* ) => (
643 $crate::event!(name: $name, target: $target, $crate::Level::INFO, { %$($k).+ $($field)* })
644 );
645 (name: $name:expr, target: $target:expr, $($arg:tt)+ ) => (
646 $crate::event!(name: $name, target: $target, $crate::Level::INFO, {}, $($arg)+)
647 );
648
649 (target: $target:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
651 $crate::event!(target: $target, parent: $parent, $crate::Level::INFO, { $($field)* }, $($arg)*)
652 );
653 (target: $target:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
654 $crate::event!(target: $target, parent: $parent, $crate::Level::INFO, { $($k).+ $($field)* })
655 );
656 (target: $target:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
657 $crate::event!(target: $target, parent: $parent, $crate::Level::INFO, { ?$($k).+ $($field)* })
658 );
659 (target: $target:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
660 $crate::event!(target: $target, parent: $parent, $crate::Level::INFO, { %$($k).+ $($field)* })
661 );
662 (target: $target:expr, parent: $parent:expr, $($arg:tt)+ ) => (
663 $crate::event!(target: $target, parent: $parent, $crate::Level::INFO, {}, $($arg)+)
664 );
665
666 (name: $name:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
668 $crate::event!(name: $name, parent: $parent, $crate::Level::INFO, { $($field)* }, $($arg)*)
669 );
670 (name: $name:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
671 $crate::event!(name: $name, parent: $parent, $crate::Level::INFO, { $($k).+ $($field)* })
672 );
673 (name: $name:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
674 $crate::event!(name: $name, parent: $parent, $crate::Level::INFO, { ?$($k).+ $($field)* })
675 );
676 (name: $name:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
677 $crate::event!(name: $name, parent: $parent, $crate::Level::INFO, { %$($k).+ $($field)* })
678 );
679 (name: $name:expr, parent: $parent:expr, $($arg:tt)+ ) => (
680 $crate::event!(name: $name, parent: $parent, $crate::Level::INFO, {}, $($arg)+)
681 );
682
683 (name: $name:expr, { $($field:tt)* }, $($arg:tt)* ) => (
685 $crate::event!(name: $name, $crate::Level::INFO, { $($field)* }, $($arg)*)
686 );
687 (name: $name:expr, $($k:ident).+ $($field:tt)* ) => (
688 $crate::event!(name: $name, $crate::Level::INFO, { $($k).+ $($field)* })
689 );
690 (name: $name:expr, ?$($k:ident).+ $($field:tt)* ) => (
691 $crate::event!(name: $name, $crate::Level::INFO, { ?$($k).+ $($field)* })
692 );
693 (name: $name:expr, %$($k:ident).+ $($field:tt)* ) => (
694 $crate::event!(name: $name, $crate::Level::INFO, { %$($k).+ $($field)* })
695 );
696 (name: $name:expr, $($arg:tt)+ ) => (
697 $crate::event!(name: $name, $crate::Level::INFO, {}, $($arg)+)
698 );
699
700 (target: $target:expr, { $($field:tt)* }, $($arg:tt)* ) => (
702 $crate::event!(target: $target, $crate::Level::INFO, { $($field)* }, $($arg)*)
703 );
704 (target: $target:expr, $($k:ident).+ $($field:tt)* ) => (
705 $crate::event!(target: $target, $crate::Level::INFO, { $($k).+ $($field)* })
706 );
707 (target: $target:expr, ?$($k:ident).+ $($field:tt)* ) => (
708 $crate::event!(target: $target, $crate::Level::INFO, { ?$($k).+ $($field)* })
709 );
710 (target: $target:expr, %$($k:ident).+ $($field:tt)* ) => (
711 $crate::event!(target: $target, $crate::Level::INFO, { %$($k).+ $($field)* })
712 );
713 (target: $target:expr, $($arg:tt)+ ) => (
714 $crate::event!(target: $target, $crate::Level::INFO, {}, $($arg)+)
715 );
716
717 (parent: $parent:expr, { $($field:tt)+ }, $($arg:tt)+ ) => (
719 $crate::event!(
720 target: module_path!(),
721 parent: $parent,
722 $crate::Level::INFO,
723 { $($field)+ },
724 $($arg)+
725 )
726 );
727 (parent: $parent:expr, $($k:ident).+ = $($field:tt)*) => (
728 $crate::event!(
729 target: module_path!(),
730 parent: $parent,
731 $crate::Level::INFO,
732 { $($k).+ = $($field)*}
733 )
734 );
735 (parent: $parent:expr, ?$($k:ident).+ = $($field:tt)*) => (
736 $crate::event!(
737 target: module_path!(),
738 parent: $parent,
739 $crate::Level::INFO,
740 { ?$($k).+ = $($field)*}
741 )
742 );
743 (parent: $parent:expr, %$($k:ident).+ = $($field:tt)*) => (
744 $crate::event!(
745 target: module_path!(),
746 parent: $parent,
747 $crate::Level::INFO,
748 { %$($k).+ = $($field)*}
749 )
750 );
751 (parent: $parent:expr, $($k:ident).+, $($field:tt)*) => (
752 $crate::event!(
753 target: module_path!(),
754 parent: $parent,
755 $crate::Level::INFO,
756 { $($k).+, $($field)*}
757 )
758 );
759 (parent: $parent:expr, ?$($k:ident).+, $($field:tt)*) => (
760 $crate::event!(
761 target: module_path!(),
762 parent: $parent,
763 $crate::Level::INFO,
764 { ?$($k).+, $($field)*}
765 )
766 );
767 (parent: $parent:expr, %$($k:ident).+, $($field:tt)*) => (
768 $crate::event!(
769 target: module_path!(),
770 parent: $parent,
771 $crate::Level::INFO,
772 { %$($k).+, $($field)*}
773 )
774 );
775 (parent: $parent:expr, $($arg:tt)+) => (
776 $crate::event!(
777 target: module_path!(),
778 parent: $parent,
779 $crate::Level::INFO,
780 {},
781 $($arg)+
782 )
783 );
784
785 ({ $($field:tt)+ }, $($arg:tt)+ ) => (
787 $crate::event!(
788 target: module_path!(),
789 $crate::Level::INFO,
790 { $($field)+ },
791 $($arg)+
792 )
793 );
794 ($($k:ident).+ = $($field:tt)*) => (
795 $crate::event!(
796 target: module_path!(),
797 $crate::Level::INFO,
798 { $($k).+ = $($field)*}
799 )
800 );
801 (?$($k:ident).+ = $($field:tt)*) => (
802 $crate::event!(
803 target: module_path!(),
804 $crate::Level::INFO,
805 { ?$($k).+ = $($field)*}
806 )
807 );
808 (%$($k:ident).+ = $($field:tt)*) => (
809 $crate::event!(
810 target: module_path!(),
811 $crate::Level::INFO,
812 { %$($k).+ = $($field)*}
813 )
814 );
815 ($($k:ident).+, $($field:tt)*) => (
816 $crate::event!(
817 target: module_path!(),
818 $crate::Level::INFO,
819 { $($k).+, $($field)*}
820 )
821 );
822 (?$($k:ident).+, $($field:tt)*) => (
823 $crate::event!(
824 target: module_path!(),
825 $crate::Level::INFO,
826 { ?$($k).+, $($field)*}
827 )
828 );
829 (%$($k:ident).+, $($field:tt)*) => (
830 $crate::event!(
831 target: module_path!(),
832 $crate::Level::INFO,
833 { %$($k).+, $($field)*}
834 )
835 );
836 (?$($k:ident).+) => (
837 $crate::event!(
838 target: module_path!(),
839 $crate::Level::INFO,
840 { ?$($k).+ }
841 )
842 );
843 (%$($k:ident).+) => (
844 $crate::event!(
845 target: module_path!(),
846 $crate::Level::INFO,
847 { %$($k).+ }
848 )
849 );
850 ($($k:ident).+) => (
851 $crate::event!(
852 target: module_path!(),
853 $crate::Level::INFO,
854 { $($k).+ }
855 )
856 );
857 ($($arg:tt)+) => (
858 $crate::event!(
859 target: module_path!(),
860 $crate::Level::INFO,
861 $($arg)+
862 )
863 );
864}
865
866#[macro_export]
868macro_rules! info_span {
869 (target: $target:expr, parent: $parent:expr, $name:expr, $($field:tt)*) => {
870 $crate::span!(
871 target: $target,
872 parent: $parent,
873 $crate::Level::INFO,
874 $name,
875 $($field)*
876 )
877 };
878 (target: $target:expr, parent: $parent:expr, $name:expr) => {
879 $crate::info_span!(target: $target, parent: $parent, $name,)
880 };
881 (parent: $parent:expr, $name:expr, $($field:tt)*) => {
882 $crate::span!(
883 target: module_path!(),
884 parent: $parent,
885 $crate::Level::INFO,
886 $name,
887 $($field)*
888 )
889 };
890 (parent: $parent:expr, $name:expr) => {
891 $crate::info_span!(parent: $parent, $name,)
892 };
893 (target: $target:expr, $name:expr, $($field:tt)*) => {
894 $crate::span!(
895 target: $target,
896 $crate::Level::INFO,
897 $name,
898 $($field)*
899 )
900 };
901 (target: $target:expr, $name:expr) => {
902 $crate::info_span!(target: $target, $name,)
903 };
904 ($name:expr, $($field:tt)*) => {
905 $crate::span!(
906 target: module_path!(),
907 $crate::Level::INFO,
908 $name,
909 $($field)*
910 )
911 };
912 ($name:expr) => {$crate::info_span!($name,)};
913}
914
915#[macro_export]
917macro_rules! debug {
918 (name: $name:expr, target: $target:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
920 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::DEBUG, { $($field)* }, $($arg)*)
921 );
922 (name: $name:expr, target: $target:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
923 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::DEBUG, { $($k).+ $($field)* })
924 );
925 (name: $name:expr, target: $target:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
926 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::DEBUG, { ?$($k).+ $($field)* })
927 );
928 (name: $name:expr, target: $target:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
929 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::DEBUG, { %$($k).+ $($field)* })
930 );
931 (name: $name:expr, target: $target:expr, parent: $parent:expr, $($arg:tt)+ ) => (
932 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::DEBUG, {}, $($arg)+)
933 );
934
935 (name: $name:expr, target: $target:expr, { $($field:tt)* }, $($arg:tt)* ) => (
937 $crate::event!(name: $name, target: $target, $crate::Level::DEBUG, { $($field)* }, $($arg)*)
938 );
939 (name: $name:expr, target: $target:expr, $($k:ident).+ $($field:tt)* ) => (
940 $crate::event!(name: $name, target: $target, $crate::Level::DEBUG, { $($k).+ $($field)* })
941 );
942 (name: $name:expr, target: $target:expr, ?$($k:ident).+ $($field:tt)* ) => (
943 $crate::event!(name: $name, target: $target, $crate::Level::DEBUG, { ?$($k).+ $($field)* })
944 );
945 (name: $name:expr, target: $target:expr, %$($k:ident).+ $($field:tt)* ) => (
946 $crate::event!(name: $name, target: $target, $crate::Level::DEBUG, { %$($k).+ $($field)* })
947 );
948 (name: $name:expr, target: $target:expr, $($arg:tt)+ ) => (
949 $crate::event!(name: $name, target: $target, $crate::Level::DEBUG, {}, $($arg)+)
950 );
951
952 (target: $target:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
954 $crate::event!(target: $target, parent: $parent, $crate::Level::DEBUG, { $($field)* }, $($arg)*)
955 );
956 (target: $target:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
957 $crate::event!(target: $target, parent: $parent, $crate::Level::DEBUG, { $($k).+ $($field)* })
958 );
959 (target: $target:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
960 $crate::event!(target: $target, parent: $parent, $crate::Level::DEBUG, { ?$($k).+ $($field)* })
961 );
962 (target: $target:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
963 $crate::event!(target: $target, parent: $parent, $crate::Level::DEBUG, { %$($k).+ $($field)* })
964 );
965 (target: $target:expr, parent: $parent:expr, $($arg:tt)+ ) => (
966 $crate::event!(target: $target, parent: $parent, $crate::Level::DEBUG, {}, $($arg)+)
967 );
968
969 (name: $name:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
971 $crate::event!(name: $name, parent: $parent, $crate::Level::DEBUG, { $($field)* }, $($arg)*)
972 );
973 (name: $name:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
974 $crate::event!(name: $name, parent: $parent, $crate::Level::DEBUG, { $($k).+ $($field)* })
975 );
976 (name: $name:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
977 $crate::event!(name: $name, parent: $parent, $crate::Level::DEBUG, { ?$($k).+ $($field)* })
978 );
979 (name: $name:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
980 $crate::event!(name: $name, parent: $parent, $crate::Level::DEBUG, { %$($k).+ $($field)* })
981 );
982 (name: $name:expr, parent: $parent:expr, $($arg:tt)+ ) => (
983 $crate::event!(name: $name, parent: $parent, $crate::Level::DEBUG, {}, $($arg)+)
984 );
985
986 (name: $name:expr, { $($field:tt)* }, $($arg:tt)* ) => (
988 $crate::event!(name: $name, $crate::Level::DEBUG, { $($field)* }, $($arg)*)
989 );
990 (name: $name:expr, $($k:ident).+ $($field:tt)* ) => (
991 $crate::event!(name: $name, $crate::Level::DEBUG, { $($k).+ $($field)* })
992 );
993 (name: $name:expr, ?$($k:ident).+ $($field:tt)* ) => (
994 $crate::event!(name: $name, $crate::Level::DEBUG, { ?$($k).+ $($field)* })
995 );
996 (name: $name:expr, %$($k:ident).+ $($field:tt)* ) => (
997 $crate::event!(name: $name, $crate::Level::DEBUG, { %$($k).+ $($field)* })
998 );
999 (name: $name:expr, $($arg:tt)+ ) => (
1000 $crate::event!(name: $name, $crate::Level::DEBUG, {}, $($arg)+)
1001 );
1002
1003 (target: $target:expr, { $($field:tt)* }, $($arg:tt)* ) => (
1005 $crate::event!(target: $target, $crate::Level::DEBUG, { $($field)* }, $($arg)*)
1006 );
1007 (target: $target:expr, $($k:ident).+ $($field:tt)* ) => (
1008 $crate::event!(target: $target, $crate::Level::DEBUG, { $($k).+ $($field)* })
1009 );
1010 (target: $target:expr, ?$($k:ident).+ $($field:tt)* ) => (
1011 $crate::event!(target: $target, $crate::Level::DEBUG, { ?$($k).+ $($field)* })
1012 );
1013 (target: $target:expr, %$($k:ident).+ $($field:tt)* ) => (
1014 $crate::event!(target: $target, $crate::Level::DEBUG, { %$($k).+ $($field)* })
1015 );
1016 (target: $target:expr, $($arg:tt)+ ) => (
1017 $crate::event!(target: $target, $crate::Level::DEBUG, {}, $($arg)+)
1018 );
1019
1020 (parent: $parent:expr, { $($field:tt)+ }, $($arg:tt)+ ) => (
1022 $crate::event!(
1023 target: module_path!(),
1024 parent: $parent,
1025 $crate::Level::DEBUG,
1026 { $($field)+ },
1027 $($arg)+
1028 )
1029 );
1030 (parent: $parent:expr, $($k:ident).+ = $($field:tt)*) => (
1031 $crate::event!(
1032 target: module_path!(),
1033 parent: $parent,
1034 $crate::Level::DEBUG,
1035 { $($k).+ = $($field)*}
1036 )
1037 );
1038 (parent: $parent:expr, ?$($k:ident).+ = $($field:tt)*) => (
1039 $crate::event!(
1040 target: module_path!(),
1041 parent: $parent,
1042 $crate::Level::DEBUG,
1043 { ?$($k).+ = $($field)*}
1044 )
1045 );
1046 (parent: $parent:expr, %$($k:ident).+ = $($field:tt)*) => (
1047 $crate::event!(
1048 target: module_path!(),
1049 parent: $parent,
1050 $crate::Level::DEBUG,
1051 { %$($k).+ = $($field)*}
1052 )
1053 );
1054 (parent: $parent:expr, $($k:ident).+, $($field:tt)*) => (
1055 $crate::event!(
1056 target: module_path!(),
1057 parent: $parent,
1058 $crate::Level::DEBUG,
1059 { $($k).+, $($field)*}
1060 )
1061 );
1062 (parent: $parent:expr, ?$($k:ident).+, $($field:tt)*) => (
1063 $crate::event!(
1064 target: module_path!(),
1065 parent: $parent,
1066 $crate::Level::DEBUG,
1067 { ?$($k).+, $($field)*}
1068 )
1069 );
1070 (parent: $parent:expr, %$($k:ident).+, $($field:tt)*) => (
1071 $crate::event!(
1072 target: module_path!(),
1073 parent: $parent,
1074 $crate::Level::DEBUG,
1075 { %$($k).+, $($field)*}
1076 )
1077 );
1078 (parent: $parent:expr, $($arg:tt)+) => (
1079 $crate::event!(
1080 target: module_path!(),
1081 parent: $parent,
1082 $crate::Level::DEBUG,
1083 {},
1084 $($arg)+
1085 )
1086 );
1087
1088 ({ $($field:tt)+ }, $($arg:tt)+ ) => (
1090 $crate::event!(
1091 target: module_path!(),
1092 $crate::Level::DEBUG,
1093 { $($field)+ },
1094 $($arg)+
1095 )
1096 );
1097 ($($k:ident).+ = $($field:tt)*) => (
1098 $crate::event!(
1099 target: module_path!(),
1100 $crate::Level::DEBUG,
1101 { $($k).+ = $($field)*}
1102 )
1103 );
1104 (?$($k:ident).+ = $($field:tt)*) => (
1105 $crate::event!(
1106 target: module_path!(),
1107 $crate::Level::DEBUG,
1108 { ?$($k).+ = $($field)*}
1109 )
1110 );
1111 (%$($k:ident).+ = $($field:tt)*) => (
1112 $crate::event!(
1113 target: module_path!(),
1114 $crate::Level::DEBUG,
1115 { %$($k).+ = $($field)*}
1116 )
1117 );
1118 ($($k:ident).+, $($field:tt)*) => (
1119 $crate::event!(
1120 target: module_path!(),
1121 $crate::Level::DEBUG,
1122 { $($k).+, $($field)*}
1123 )
1124 );
1125 (?$($k:ident).+, $($field:tt)*) => (
1126 $crate::event!(
1127 target: module_path!(),
1128 $crate::Level::DEBUG,
1129 { ?$($k).+, $($field)*}
1130 )
1131 );
1132 (%$($k:ident).+, $($field:tt)*) => (
1133 $crate::event!(
1134 target: module_path!(),
1135 $crate::Level::DEBUG,
1136 { %$($k).+, $($field)*}
1137 )
1138 );
1139 (?$($k:ident).+) => (
1140 $crate::event!(
1141 target: module_path!(),
1142 $crate::Level::DEBUG,
1143 { ?$($k).+ }
1144 )
1145 );
1146 (%$($k:ident).+) => (
1147 $crate::event!(
1148 target: module_path!(),
1149 $crate::Level::DEBUG,
1150 { %$($k).+ }
1151 )
1152 );
1153 ($($k:ident).+) => (
1154 $crate::event!(
1155 target: module_path!(),
1156 $crate::Level::DEBUG,
1157 { $($k).+ }
1158 )
1159 );
1160 ($($arg:tt)+) => (
1161 $crate::event!(
1162 target: module_path!(),
1163 $crate::Level::DEBUG,
1164 $($arg)+
1165 )
1166 );
1167}
1168
1169#[macro_export]
1171macro_rules! debug_span {
1172 (target: $target:expr, parent: $parent:expr, $name:expr, $($field:tt)*) => {
1173 $crate::span!(
1174 target: $target,
1175 parent: $parent,
1176 $crate::Level::DEBUG,
1177 $name,
1178 $($field)*
1179 )
1180 };
1181 (target: $target:expr, parent: $parent:expr, $name:expr) => {
1182 $crate::debug_span!(target: $target, parent: $parent, $name,)
1183 };
1184 (parent: $parent:expr, $name:expr, $($field:tt)*) => {
1185 $crate::span!(
1186 target: module_path!(),
1187 parent: $parent,
1188 $crate::Level::DEBUG,
1189 $name,
1190 $($field)*
1191 )
1192 };
1193 (parent: $parent:expr, $name:expr) => {
1194 $crate::debug_span!(parent: $parent, $name,)
1195 };
1196 (target: $target:expr, $name:expr, $($field:tt)*) => {
1197 $crate::span!(
1198 target: $target,
1199 $crate::Level::DEBUG,
1200 $name,
1201 $($field)*
1202 )
1203 };
1204 (target: $target:expr, $name:expr) => {
1205 $crate::debug_span!(target: $target, $name,)
1206 };
1207 ($name:expr, $($field:tt)*) => {
1208 $crate::span!(
1209 target: module_path!(),
1210 $crate::Level::DEBUG,
1211 $name,
1212 $($field)*
1213 )
1214 };
1215 ($name:expr) => {$crate::debug_span!($name,)};
1216}
1217
1218#[macro_export]
1220macro_rules! trace {
1221 (name: $name:expr, target: $target:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
1223 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::TRACE, { $($field)* }, $($arg)*)
1224 );
1225 (name: $name:expr, target: $target:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
1226 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::TRACE, { $($k).+ $($field)* })
1227 );
1228 (name: $name:expr, target: $target:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
1229 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::TRACE, { ?$($k).+ $($field)* })
1230 );
1231 (name: $name:expr, target: $target:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
1232 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::TRACE, { %$($k).+ $($field)* })
1233 );
1234 (name: $name:expr, target: $target:expr, parent: $parent:expr, $($arg:tt)+ ) => (
1235 $crate::event!(name: $name, target: $target, parent: $parent, $crate::Level::TRACE, {}, $($arg)+)
1236 );
1237
1238 (name: $name:expr, target: $target:expr, { $($field:tt)* }, $($arg:tt)* ) => (
1240 $crate::event!(name: $name, target: $target, $crate::Level::TRACE, { $($field)* }, $($arg)*)
1241 );
1242 (name: $name:expr, target: $target:expr, $($k:ident).+ $($field:tt)* ) => (
1243 $crate::event!(name: $name, target: $target, $crate::Level::TRACE, { $($k).+ $($field)* })
1244 );
1245 (name: $name:expr, target: $target:expr, ?$($k:ident).+ $($field:tt)* ) => (
1246 $crate::event!(name: $name, target: $target, $crate::Level::TRACE, { ?$($k).+ $($field)* })
1247 );
1248 (name: $name:expr, target: $target:expr, %$($k:ident).+ $($field:tt)* ) => (
1249 $crate::event!(name: $name, target: $target, $crate::Level::TRACE, { %$($k).+ $($field)* })
1250 );
1251 (name: $name:expr, target: $target:expr, $($arg:tt)+ ) => (
1252 $crate::event!(name: $name, target: $target, $crate::Level::TRACE, {}, $($arg)+)
1253 );
1254
1255 (target: $target:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
1257 $crate::event!(target: $target, parent: $parent, $crate::Level::TRACE, { $($field)* }, $($arg)*)
1258 );
1259 (target: $target:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
1260 $crate::event!(target: $target, parent: $parent, $crate::Level::TRACE, { $($k).+ $($field)* })
1261 );
1262 (target: $target:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
1263 $crate::event!(target: $target, parent: $parent, $crate::Level::TRACE, { ?$($k).+ $($field)* })
1264 );
1265 (target: $target:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
1266 $crate::event!(target: $target, parent: $parent, $crate::Level::TRACE, { %$($k).+ $($field)* })
1267 );
1268 (target: $target:expr, parent: $parent:expr, $($arg:tt)+ ) => (
1269 $crate::event!(target: $target, parent: $parent, $crate::Level::TRACE, {}, $($arg)+)
1270 );
1271
1272 (name: $name:expr, parent: $parent:expr, { $($field:tt)* }, $($arg:tt)* ) => (
1274 $crate::event!(name: $name, parent: $parent, $crate::Level::TRACE, { $($field)* }, $($arg)*)
1275 );
1276 (name: $name:expr, parent: $parent:expr, $($k:ident).+ $($field:tt)* ) => (
1277 $crate::event!(name: $name, parent: $parent, $crate::Level::TRACE, { $($k).+ $($field)* })
1278 );
1279 (name: $name:expr, parent: $parent:expr, ?$($k:ident).+ $($field:tt)* ) => (
1280 $crate::event!(name: $name, parent: $parent, $crate::Level::TRACE, { ?$($k).+ $($field)* })
1281 );
1282 (name: $name:expr, parent: $parent:expr, %$($k:ident).+ $($field:tt)* ) => (
1283 $crate::event!(name: $name, parent: $parent, $crate::Level::TRACE, { %$($k).+ $($field)* })
1284 );
1285 (name: $name:expr, parent: $parent:expr, $($arg:tt)+ ) => (
1286 $crate::event!(name: $name, parent: $parent, $crate::Level::TRACE, {}, $($arg)+)
1287 );
1288
1289 (name: $name:expr, { $($field:tt)* }, $($arg:tt)* ) => (
1291 $crate::event!(name: $name, $crate::Level::TRACE, { $($field)* }, $($arg)*)
1292 );
1293 (name: $name:expr, $($k:ident).+ $($field:tt)* ) => (
1294 $crate::event!(name: $name, $crate::Level::TRACE, { $($k).+ $($field)* })
1295 );
1296 (name: $name:expr, ?$($k:ident).+ $($field:tt)* ) => (
1297 $crate::event!(name: $name, $crate::Level::TRACE, { ?$($k).+ $($field)* })
1298 );
1299 (name: $name:expr, %$($k:ident).+ $($field:tt)* ) => (
1300 $crate::event!(name: $name, $crate::Level::TRACE, { %$($k).+ $($field)* })
1301 );
1302 (name: $name:expr, $($arg:tt)+ ) => (
1303 $crate::event!(name: $name, $crate::Level::TRACE, {}, $($arg)+)
1304 );
1305
1306 (target: $target:expr, { $($field:tt)* }, $($arg:tt)* ) => (
1308 $crate::event!(target: $target, $crate::Level::TRACE, { $($field)* }, $($arg)*)
1309 );
1310 (target: $target:expr, $($k:ident).+ $($field:tt)* ) => (
1311 $crate::event!(target: $target, $crate::Level::TRACE, { $($k).+ $($field)* })
1312 );
1313 (target: $target:expr, ?$($k:ident).+ $($field:tt)* ) => (
1314 $crate::event!(target: $target, $crate::Level::TRACE, { ?$($k).+ $($field)* })
1315 );
1316 (target: $target:expr, %$($k:ident).+ $($field:tt)* ) => (
1317 $crate::event!(target: $target, $crate::Level::TRACE, { %$($k).+ $($field)* })
1318 );
1319 (target: $target:expr, $($arg:tt)+ ) => (
1320 $crate::event!(target: $target, $crate::Level::TRACE, {}, $($arg)+)
1321 );
1322
1323 (parent: $parent:expr, { $($field:tt)+ }, $($arg:tt)+ ) => (
1325 $crate::event!(
1326 target: module_path!(),
1327 parent: $parent,
1328 $crate::Level::TRACE,
1329 { $($field)+ },
1330 $($arg)+
1331 )
1332 );
1333 (parent: $parent:expr, $($k:ident).+ = $($field:tt)*) => (
1334 $crate::event!(
1335 target: module_path!(),
1336 parent: $parent,
1337 $crate::Level::TRACE,
1338 { $($k).+ = $($field)*}
1339 )
1340 );
1341 (parent: $parent:expr, ?$($k:ident).+ = $($field:tt)*) => (
1342 $crate::event!(
1343 target: module_path!(),
1344 parent: $parent,
1345 $crate::Level::TRACE,
1346 { ?$($k).+ = $($field)*}
1347 )
1348 );
1349 (parent: $parent:expr, %$($k:ident).+ = $($field:tt)*) => (
1350 $crate::event!(
1351 target: module_path!(),
1352 parent: $parent,
1353 $crate::Level::TRACE,
1354 { %$($k).+ = $($field)*}
1355 )
1356 );
1357 (parent: $parent:expr, $($k:ident).+, $($field:tt)*) => (
1358 $crate::event!(
1359 target: module_path!(),
1360 parent: $parent,
1361 $crate::Level::TRACE,
1362 { $($k).+, $($field)*}
1363 )
1364 );
1365 (parent: $parent:expr, ?$($k:ident).+, $($field:tt)*) => (
1366 $crate::event!(
1367 target: module_path!(),
1368 parent: $parent,
1369 $crate::Level::TRACE,
1370 { ?$($k).+, $($field)*}
1371 )
1372 );
1373 (parent: $parent:expr, %$($k:ident).+, $($field:tt)*) => (
1374 $crate::event!(
1375 target: module_path!(),
1376 parent: $parent,
1377 $crate::Level::TRACE,
1378 { %$($k).+, $($field)*}
1379 )
1380 );
1381 (parent: $parent:expr, $($arg:tt)+) => (
1382 $crate::event!(
1383 target: module_path!(),
1384 parent: $parent,
1385 $crate::Level::TRACE,
1386 {},
1387 $($arg)+
1388 )
1389 );
1390
1391 ({ $($field:tt)+ }, $($arg:tt)+ ) => (
1393 $crate::event!(
1394 target: module_path!(),
1395 $crate::Level::TRACE,
1396 { $($field)+ },
1397 $($arg)+
1398 )
1399 );
1400 ($($k:ident).+ = $($field:tt)*) => (
1401 $crate::event!(
1402 target: module_path!(),
1403 $crate::Level::TRACE,
1404 { $($k).+ = $($field)*}
1405 )
1406 );
1407 (?$($k:ident).+ = $($field:tt)*) => (
1408 $crate::event!(
1409 target: module_path!(),
1410 $crate::Level::TRACE,
1411 { ?$($k).+ = $($field)*}
1412 )
1413 );
1414 (%$($k:ident).+ = $($field:tt)*) => (
1415 $crate::event!(
1416 target: module_path!(),
1417 $crate::Level::TRACE,
1418 { %$($k).+ = $($field)*}
1419 )
1420 );
1421 ($($k:ident).+, $($field:tt)*) => (
1422 $crate::event!(
1423 target: module_path!(),
1424 $crate::Level::TRACE,
1425 { $($k).+, $($field)*}
1426 )
1427 );
1428 (?$($k:ident).+, $($field:tt)*) => (
1429 $crate::event!(
1430 target: module_path!(),
1431 $crate::Level::TRACE,
1432 { ?$($k).+, $($field)*}
1433 )
1434 );
1435 (%$($k:ident).+, $($field:tt)*) => (
1436 $crate::event!(
1437 target: module_path!(),
1438 $crate::Level::TRACE,
1439 { %$($k).+, $($field)*}
1440 )
1441 );
1442 (?$($k:ident).+) => (
1443 $crate::event!(
1444 target: module_path!(),
1445 $crate::Level::TRACE,
1446 { ?$($k).+ }
1447 )
1448 );
1449 (%$($k:ident).+) => (
1450 $crate::event!(
1451 target: module_path!(),
1452 $crate::Level::TRACE,
1453 { %$($k).+ }
1454 )
1455 );
1456 ($($k:ident).+) => (
1457 $crate::event!(
1458 target: module_path!(),
1459 $crate::Level::TRACE,
1460 { $($k).+ }
1461 )
1462 );
1463 ($($arg:tt)+) => (
1464 $crate::event!(
1465 target: module_path!(),
1466 $crate::Level::TRACE,
1467 $($arg)+
1468 )
1469 );
1470}
1471
1472#[macro_export]
1474macro_rules! trace_span {
1475 (target: $target:expr, parent: $parent:expr, $name:expr, $($field:tt)*) => {
1476 $crate::span!(
1477 target: $target,
1478 parent: $parent,
1479 $crate::Level::TRACE,
1480 $name,
1481 $($field)*
1482 )
1483 };
1484 (target: $target:expr, parent: $parent:expr, $name:expr) => {
1485 $crate::trace_span!(target: $target, parent: $parent, $name,)
1486 };
1487 (parent: $parent:expr, $name:expr, $($field:tt)*) => {
1488 $crate::span!(
1489 target: module_path!(),
1490 parent: $parent,
1491 $crate::Level::TRACE,
1492 $name,
1493 $($field)*
1494 )
1495 };
1496 (parent: $parent:expr, $name:expr) => {
1497 $crate::trace_span!(parent: $parent, $name,)
1498 };
1499 (target: $target:expr, $name:expr, $($field:tt)*) => {
1500 $crate::span!(
1501 target: $target,
1502 $crate::Level::TRACE,
1503 $name,
1504 $($field)*
1505 )
1506 };
1507 (target: $target:expr, $name:expr) => {
1508 $crate::trace_span!(target: $target, $name,)
1509 };
1510 ($name:expr, $($field:tt)*) => {
1511 $crate::span!(
1512 target: module_path!(),
1513 $crate::Level::TRACE,
1514 $name,
1515 $($field)*
1516 )
1517 };
1518 ($name:expr) => { $crate::trace_span!($name,) };
1519}
1520
1521#[macro_export]
1523macro_rules! event {
1524 (name: $name:expr, target: $target:expr, parent: $parent:expr, $lvl:expr, { $($fields:tt)* } )=> ({
1526 $crate::__event_with_level!(level: $lvl, name: $name, target: $target, parent: $parent, $lvl, { $($fields)* })
1527 });
1528 (name: $name:expr, target: $target:expr, parent: $parent:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => (
1529 $crate::event!(
1530 name: $name,
1531 target: $target,
1532 parent: $parent,
1533 $lvl,
1534 { message = $crate::__macro_support::format_args!($($arg)+), $($fields)* }
1535 )
1536 );
1537 (name: $name:expr, target: $target:expr, parent: $parent:expr, $lvl:expr, $($k:ident).+ = $($fields:tt)* ) => (
1538 $crate::event!(name: $name, target: $target, parent: $parent, $lvl, { $($k).+ = $($fields)* })
1539 );
1540 (name: $name:expr, target: $target:expr, parent: $parent:expr, $lvl:expr, $($arg:tt)+) => (
1541 $crate::event!(name: $name, target: $target, parent: $parent, $lvl, { $($arg)+ })
1542 );
1543
1544 (name: $name:expr, target: $target:expr, $lvl:expr, { $($fields:tt)* } )=> ({
1546 $crate::__event_with_level!(level: $lvl, name: $name, target: $target, $lvl, { $($fields)* })
1547 });
1548 (name: $name:expr, target: $target:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => (
1549 $crate::event!(
1550 name: $name,
1551 target: $target,
1552 $lvl,
1553 { message = $crate::__macro_support::format_args!($($arg)+), $($fields)* }
1554 )
1555 );
1556 (name: $name:expr, target: $target:expr, $lvl:expr, $($k:ident).+ = $($fields:tt)* ) => (
1557 $crate::event!(name: $name, target: $target, $lvl, { $($k).+ = $($fields)* })
1558 );
1559 (name: $name:expr, target: $target:expr, $lvl:expr, $($arg:tt)+) => (
1560 $crate::event!(name: $name, target: $target, $lvl, { $($arg)+ })
1561 );
1562
1563 (target: $target:expr, parent: $parent:expr, $lvl:expr, { $($fields:tt)* } )=> ({
1565 $crate::__event_with_level!(level: $lvl, target: $target, parent: $parent, $lvl, { $($fields)* })
1566 });
1567 (target: $target:expr, parent: $parent:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => (
1568 $crate::event!(
1569 target: $target,
1570 parent: $parent,
1571 $lvl,
1572 { message = $crate::__macro_support::format_args!($($arg)+), $($fields)* }
1573 )
1574 );
1575 (target: $target:expr, parent: $parent:expr, $lvl:expr, $($k:ident).+ = $($fields:tt)* ) => (
1576 $crate::event!(target: $target, parent: $parent, $lvl, { $($k).+ = $($fields)* })
1577 );
1578 (target: $target:expr, parent: $parent:expr, $lvl:expr, $($arg:tt)+) => (
1579 $crate::event!(target: $target, parent: $parent, $lvl, { $($arg)+ })
1580 );
1581
1582 (name: $name:expr, parent: $parent:expr, $lvl:expr, { $($fields:tt)* } )=> ({
1584 $crate::__event_with_level!(level: $lvl, name: $name, parent: $parent, $lvl, { $($fields)* })
1585 });
1586 (name: $name:expr, parent: $parent:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => (
1587 $crate::event!(
1588 name: $name,
1589 parent: $parent,
1590 $lvl,
1591 { message = $crate::__macro_support::format_args!($($arg)+), $($fields)* }
1592 )
1593 );
1594 (name: $name:expr, parent: $parent:expr, $lvl:expr, $($k:ident).+ = $($fields:tt)* ) => (
1595 $crate::event!(name: $name, parent: $parent, $lvl, { $($k).+ = $($fields)* })
1596 );
1597 (name: $name:expr, parent: $parent:expr, $lvl:expr, $($arg:tt)+) => (
1598 $crate::event!(name: $name, parent: $parent, $lvl, { $($arg)+ })
1599 );
1600
1601 (name: $name:expr, $lvl:expr, { $($fields:tt)* } )=> ({
1603 $crate::__event_with_level!(level: $lvl, name: $name, $lvl, { $($fields)* })
1604 });
1605 (name: $name:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => (
1606 $crate::event!(
1607 name: $name,
1608 $lvl,
1609 { message = $crate::__macro_support::format_args!($($arg)+), $($fields)* }
1610 )
1611 );
1612 (name: $name:expr, $lvl:expr, $($k:ident).+ = $($fields:tt)* ) => (
1613 $crate::event!(name: $name, $lvl, { $($k).+ = $($fields)* })
1614 );
1615 (name: $name:expr, $lvl:expr, $($arg:tt)+ ) => (
1616 $crate::event!(name: $name, $lvl, { $($arg)+ })
1617 );
1618
1619 (target: $target:expr, $lvl:expr, { $($fields:tt)* } )=> ({
1621 $crate::__event_with_level!(level: $lvl, target: $target, $lvl, { $($fields)* })
1622 });
1623 (target: $target:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => (
1624 $crate::event!(
1625 target: $target,
1626 $lvl,
1627 { message = $crate::__macro_support::format_args!($($arg)+), $($fields)* }
1628 )
1629 );
1630 (target: $target:expr, $lvl:expr, $($k:ident).+ = $($fields:tt)* ) => (
1631 $crate::event!(target: $target, $lvl, { $($k).+ = $($fields)* })
1632 );
1633 (target: $target:expr, $lvl:expr, $($arg:tt)+ ) => (
1634 $crate::event!(target: $target, $lvl, { $($arg)+ })
1635 );
1636
1637 (parent: $parent:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => (
1639 $crate::event!(
1640 target: module_path!(),
1641 parent: $parent,
1642 $lvl,
1643 { message = $crate::__macro_support::format_args!($($arg)+), $($fields)* }
1644 )
1645 );
1646 (parent: $parent:expr, $lvl:expr, $($k:ident).+ = $($field:tt)*) => (
1647 $crate::event!(
1648 target: module_path!(),
1649 parent: $parent,
1650 $lvl,
1651 { $($k).+ = $($field)*}
1652 )
1653 );
1654 (parent: $parent:expr, $lvl:expr, ?$($k:ident).+ = $($field:tt)*) => (
1655 $crate::event!(
1656 target: module_path!(),
1657 parent: $parent,
1658 $lvl,
1659 { ?$($k).+ = $($field)*}
1660 )
1661 );
1662 (parent: $parent:expr, $lvl:expr, %$($k:ident).+ = $($field:tt)*) => (
1663 $crate::event!(
1664 target: module_path!(),
1665 parent: $parent,
1666 $lvl,
1667 { %$($k).+ = $($field)*}
1668 )
1669 );
1670 (parent: $parent:expr, $lvl:expr, $($k:ident).+, $($field:tt)*) => (
1671 $crate::event!(
1672 target: module_path!(),
1673 parent: $parent,
1674 $lvl,
1675 { $($k).+, $($field)*}
1676 )
1677 );
1678 (parent: $parent:expr, $lvl:expr, %$($k:ident).+, $($field:tt)*) => (
1679 $crate::event!(
1680 target: module_path!(),
1681 parent: $parent,
1682 $lvl,
1683 { %$($k).+, $($field)*}
1684 )
1685 );
1686 (parent: $parent:expr, $lvl:expr, ?$($k:ident).+, $($field:tt)*) => (
1687 $crate::event!(
1688 target: module_path!(),
1689 parent: $parent,
1690 $lvl,
1691 { ?$($k).+, $($field)*}
1692 )
1693 );
1694 (parent: $parent:expr, $lvl:expr, $($arg:tt)+ ) => (
1695 $crate::event!(target: module_path!(), parent: $parent, $lvl, { $($arg)+ })
1696 );
1697
1698 ( $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => (
1700 $crate::event!(
1701 target: module_path!(),
1702 $lvl,
1703 { message = $crate::__macro_support::format_args!($($arg)+), $($fields)* }
1704 )
1705 );
1706 ( $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => (
1707 $crate::event!(
1708 target: module_path!(),
1709 $lvl,
1710 { message = format_args!($($arg)+), $($fields)* }
1711 )
1712 );
1713 ($lvl:expr, $($k:ident).+ = $($field:tt)*) => (
1714 $crate::event!(
1715 target: module_path!(),
1716 $lvl,
1717 { $($k).+ = $($field)*}
1718 )
1719 );
1720 ($lvl:expr, $($k:ident).+, $($field:tt)*) => (
1721 $crate::event!(
1722 target: module_path!(),
1723 $lvl,
1724 { $($k).+, $($field)*}
1725 )
1726 );
1727 ($lvl:expr, ?$($k:ident).+, $($field:tt)*) => (
1728 $crate::event!(
1729 target: module_path!(),
1730 $lvl,
1731 { ?$($k).+, $($field)*}
1732 )
1733 );
1734 ($lvl:expr, %$($k:ident).+, $($field:tt)*) => (
1735 $crate::event!(
1736 target: module_path!(),
1737 $lvl,
1738 { %$($k).+, $($field)*}
1739 )
1740 );
1741 ($lvl:expr, ?$($k:ident).+) => (
1742 $crate::event!($lvl, ?$($k).+,)
1743 );
1744 ($lvl:expr, %$($k:ident).+) => (
1745 $crate::event!($lvl, %$($k).+,)
1746 );
1747 ($lvl:expr, $($k:ident).+) => (
1748 $crate::event!($lvl, $($k).+,)
1749 );
1750 ( $lvl:expr, $($arg:tt)+ ) => (
1751 $crate::event!(target: module_path!(), $lvl, { $($arg)+ })
1752 );
1753}
1754
1755#[macro_export]
1757macro_rules! span {
1758 (target: $target:expr, parent: $parent:expr, $lvl:expr, $name:expr) => {
1759 $crate::span!(target: $target, parent: $parent, $lvl, $name,)
1760 };
1761 (target: $target:expr, parent: $parent:expr, $lvl:expr, $name:expr, $($fields:tt)*) => {
1762 $crate::__span_with_level!(level: $lvl, target: $target, parent: $parent, $lvl, $name, $($fields)*)
1763 };
1764 (target: $target:expr, $lvl:expr, $name:expr, $($fields:tt)*) => {
1765 $crate::__span_with_level!(level: $lvl, target: $target, $lvl, $name, $($fields)*)
1766 };
1767 (target: $target:expr, parent: $parent:expr, $lvl:expr, $name:expr) => {
1768 $crate::span!(target: $target, parent: $parent, $lvl, $name,)
1769 };
1770 (parent: $parent:expr, $lvl:expr, $name:expr, $($fields:tt)*) => {
1771 $crate::span!(
1772 target: module_path!(),
1773 parent: $parent,
1774 $lvl,
1775 $name,
1776 $($fields)*
1777 )
1778 };
1779 (parent: $parent:expr, $lvl:expr, $name:expr) => {
1780 $crate::span!(
1781 target: module_path!(),
1782 parent: $parent,
1783 $lvl,
1784 $name,
1785 )
1786 };
1787 (target: $target:expr, $lvl:expr, $name:expr, $($fields:tt)*) => {
1788 $crate::span!(
1789 target: $target,
1790 $lvl,
1791 $name,
1792 $($fields)*
1793 )
1794 };
1795 (target: $target:expr, $lvl:expr, $name:expr) => {
1796 $crate::span!(target: $target, $lvl, $name,)
1797 };
1798 ($lvl:expr, $name:expr, $($fields:tt)*) => {
1799 $crate::span!(
1800 target: module_path!(),
1801 $lvl,
1802 $name,
1803 $($fields)*
1804 )
1805 };
1806 ($lvl:expr, $name:expr) => {
1807 $crate::span!(
1808 target: module_path!(),
1809 $lvl,
1810 $name,
1811 )
1812 };
1813}
1814
1815#[doc(hidden)]
1816#[macro_export]
1817macro_rules! __event_with_level {
1818 (level: $lvl:expr, $($arg:tt)*) => {{
1819 let emit = {
1820 #[cold] #[inline(never)] || { $crate::__macro_support::tracing::event!($($arg)*) }
1821 };
1822
1823 if $crate::__macro_support::tracing::enabled!($lvl) {
1824 emit();
1825 }
1826 }};
1827}
1828
1829#[doc(hidden)]
1830#[macro_export]
1831macro_rules! __span_with_level {
1832 (level: $lvl:expr, $($arg:tt)*) => {{
1833 let emit = {
1834 #[cold] #[inline(never)] || { $crate::__macro_support::tracing::span!($($arg)*) }
1835 };
1836
1837 if $crate::__macro_support::tracing::enabled!($lvl) {
1838 emit()
1839 } else {
1840 $crate::__macro_support::tracing::Span::none()
1841 }
1842 }};
1843}
1844
1845#[doc(hidden)]
1846pub mod __macro_support {
1847 pub use core::format_args;
1848 pub use tracing;
1849}