better_logger/
lib.rs

1// better-logger/src/lib.rs
2
3#[macro_export]
4macro_rules! trace {
5    ($($arg:tt)*) => {
6        {
7            let message = format!($($arg)*);
8            if $crate::logger::is_async() == true {
9                $crate::logger::log_async("trace", &message);
10            } 
11            else {
12                $crate::logger::log_sync("trace", &message);
13            }
14        }
15    };
16}
17
18#[macro_export]
19macro_rules! debug {
20    ($($arg:tt)*) => {
21        {
22            let message = format!($($arg)*);
23            if $crate::logger::is_async() == true {
24                $crate::logger::log_async("debug", &message);
25            } 
26            else {
27                $crate::logger::log_sync("debug", &message);
28            }
29        }
30    };
31}
32
33#[macro_export]
34macro_rules! debugx {
35    ($($arg:tt)*) => {
36        {
37            if $crate::logger::debug_extra_enabled() == true {
38                let message = format!($($arg)*);
39                if $crate::logger::is_async() == true {
40                    $crate::logger::log_async("debug", &message);
41                } else {
42                    $crate::logger::log_sync("debug", &message);
43                }
44            }
45        }
46    };
47}
48
49#[macro_export]
50macro_rules! info {
51    ($($arg:tt)*) => {
52        {
53            let message = format!($($arg)*);
54            if $crate::logger::is_async() == true {
55                $crate::logger::log_async("info", &message);
56            } 
57            else {
58                $crate::logger::log_sync("info", &message);
59            }
60        }
61    };
62}
63
64#[macro_export]
65macro_rules! warn {
66    ($($arg:tt)*) => {
67        {
68            let message = format!($($arg)*);
69            if $crate::logger::is_async() == true {
70                $crate::logger::log_async("warn", &message);
71            } 
72            else {
73                $crate::logger::log_sync("warn", &message);
74            }
75        }
76    };
77}
78
79#[macro_export]
80macro_rules! error {
81    ($($arg:tt)*) => {
82        {
83            let message = format!($($arg)*);
84            if $crate::logger::is_async() == true {
85                $crate::logger::log_async("error", &message);
86            } 
87            else {
88                $crate::logger::log_sync("error", &message);
89            }
90        }
91    };
92}
93
94pub mod settings;
95pub mod logger;
96
97pub(crate) mod core;
98pub(crate) mod auxiliary;
99
100pub use settings::Settings as LoggerSettings;