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}