tuwunel_core/utils/result/
log_debug_err.rs1use std::fmt::Debug;
2
3use tracing::Level;
4
5use super::{DebugInspect, Result};
6use crate::error;
7
8pub trait LogDebugErr<T, E: Debug> {
9 #[must_use]
10 fn err_debug_log(self, level: Level) -> Self;
11
12 #[must_use]
13 fn log_debug_err(self) -> Self
14 where
15 Self: Sized,
16 {
17 self.err_debug_log(Level::ERROR)
18 }
19}
20
21impl<T, E: Debug> LogDebugErr<T, E> for Result<T, E> {
22 #[inline]
23 fn err_debug_log(self, level: Level) -> Self {
24 self.debug_inspect_err(|error| error::inspect_debug_log_level(&error, level))
25 }
26}