vacro_trace/
lib.rs

1//! <div class="doc-en">
2//!
3#![doc = include_str!("docs/en.md")]
4//! </div>
5//!
6//! <div class="doc-cn">
7//!
8#![doc = include_str!("docs/zh_cn.md")]
9//!
10//! </div>
11
12use vacro_doc_i18n::doc_i18n;
13
14#[doc(hidden)]
15pub mod __private;
16
17#[cfg(feature = "macros")]
18pub use vacro_trace_macro::*;
19
20#[cfg(feature = "macros")]
21#[derive(Debug, Clone, Copy, PartialEq, Eq)]
22#[doc_i18n]
23/// <div class="doc-cn"> 日志级别。 </div>
24/// <div class="doc-en"> Log level. </div>
25pub enum Level {
26    /// <div class="doc-cn"> 错误级别 (Error)。 </div>
27    /// <div class="doc-en"> Error level. </div>
28    Error,
29    /// <div class="doc-cn"> 警告级别 (Warn)。 </div>
30    /// <div class="doc-en"> Warn level. </div>
31    Warn,
32    /// <div class="doc-cn"> 信息级别 (Info)。 </div>
33    /// <div class="doc-en"> Info level. </div>
34    Info,
35    /// <div class="doc-cn"> 调试级别 (Debug)。 </div>
36    /// <div class="doc-en"> Debug level. </div>
37    Debug,
38    /// <div class="doc-cn"> 追踪级别 (Trace)。 </div>
39    /// <div class="doc-en"> Trace level. </div>
40    Trace,
41}
42
43#[cfg(feature = "macros")]
44impl std::fmt::Display for Level {
45    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
46        match self {
47            Level::Error => write!(f, "ERROR"),
48            Level::Warn => write!(f, "WARN"),
49            Level::Info => write!(f, "INFO"),
50            Level::Debug => write!(f, "DEBUG"),
51            Level::Trace => write!(f, "TRACE"),
52        }
53    }
54}