1#![no_std]
2
3#[doc(hidden)]
4pub use tracing;
5
6#[macro_export]
8macro_rules! trace_dbg {
9 (target: $target:expr, level: $level:expr, $ex:expr) => {
10 $crate::dbg!(target: $target, level: $level, $ex)
11 };
12 (level: $level:expr, $ex:expr) => {
13 $crate::dbg!(target: module_path!(), level: $level, $ex)
14 };
15 (target: $target:expr, $ex:expr) => {
16 $crate::dbg!(target: $target, level: $crate::tracing::Level::DEBUG, $ex)
17 };
18 ($ex:expr) => {
19 $crate::dbg!(level: $crate::tracing::Level::DEBUG, $ex)
20 };
21}
22
23#[macro_export]
29macro_rules! dbg {
30 (target: $target:expr, level: $level:expr, $ex:expr) => {{
31 match $ex {
32 value => {
33 $crate::tracing::event!(target: $target, $level, ?value, stringify!($ex));
34 value
35 }
36 }
37 }};
38 (level: $level:expr, $ex:expr) => {
39 $crate::dbg!(target: module_path!(), level: $level, $ex)
40 };
41 (target: $target:expr, $ex:expr) => {
42 $crate::dbg!(target: $target, level: $crate::tracing::Level::DEBUG, $ex)
43 };
44 ($ex:expr) => {
45 $crate::dbg!(level: $crate::tracing::Level::DEBUG, $ex)
46 };
47}