1#[cfg(feature = "logging")]
19pub use tracing::{debug, enabled, error, info, trace, warn, Level};
20
21#[cfg(not(feature = "logging"))]
28#[macro_export]
29#[doc(hidden)]
30macro_rules! __log_noop_info {
31 ($($arg:tt)*) => {
32 ()
33 };
34}
35
36#[cfg(not(feature = "logging"))]
37#[macro_export]
38#[doc(hidden)]
39macro_rules! __log_noop_warn {
40 ($($arg:tt)*) => {
41 ()
42 };
43}
44
45#[cfg(not(feature = "logging"))]
46#[macro_export]
47#[doc(hidden)]
48macro_rules! __log_noop_debug {
49 ($($arg:tt)*) => {
50 ()
51 };
52}
53
54#[cfg(not(feature = "logging"))]
55#[macro_export]
56#[doc(hidden)]
57macro_rules! __log_noop_error {
58 ($($arg:tt)*) => {
59 ()
60 };
61}
62
63#[cfg(not(feature = "logging"))]
64#[macro_export]
65#[doc(hidden)]
66macro_rules! __log_noop_trace {
67 ($($arg:tt)*) => {
68 ()
69 };
70}
71
72#[cfg(not(feature = "logging"))]
73#[macro_export]
74#[doc(hidden)]
75macro_rules! __log_noop_enabled {
76 ($($arg:tt)*) => {
77 false
78 };
79}
80
81#[cfg(not(feature = "logging"))]
83pub use __log_noop_debug as debug;
84#[cfg(not(feature = "logging"))]
85pub use __log_noop_enabled as enabled;
86#[cfg(not(feature = "logging"))]
87pub use __log_noop_error as error;
88#[cfg(not(feature = "logging"))]
89pub use __log_noop_info as info;
90#[cfg(not(feature = "logging"))]
91pub use __log_noop_trace as trace;
92#[cfg(not(feature = "logging"))]
93pub use __log_noop_warn as warn;
94
95#[cfg(not(feature = "logging"))]
97#[allow(dead_code)]
98pub struct Level;
99
100#[cfg(not(feature = "logging"))]
101#[allow(dead_code)]
102impl Level {
103 pub const DEBUG: Self = Self;
105 pub const INFO: Self = Self;
107 pub const WARN: Self = Self;
109 pub const ERROR: Self = Self;
111 pub const TRACE: Self = Self;
113}