Struct slog::Fuse
[−]
[src]
pub struct Fuse<D: Drain>(pub D);
Drain
panicking on error
Logger
requires a root drain to handle all errors (Drain::Error == ()
),
Fuse
will wrap a Drain
and panic if it returns any errors.
Note: Drain::Err
must implement Display
(for displaying on panick). It's
easy to create own Fuse
drain if this requirement can't be fulfilled.
Methods
impl<D: Drain> Fuse<D>
[src]
fn new(drain: D) -> Self
Create Fuse
wrapping given drain
Trait Implementations
impl<D: Drain> Drain for Fuse<D> where D::Err: Debug
[src]
type Ok = ()
Type returned by this drain Read more
type Err = Never
Type of potential errors that can be returned by this Drain
fn log(&self,
record: &Record,
logger_values: &OwnedKVList)
-> Result<Self::Ok, Never>
record: &Record,
logger_values: &OwnedKVList)
-> Result<Self::Ok, Never>
Handle one logging statement (Record
) Read more
fn map<F, R>(self, f: F) -> R where Self: Sized, F: FnOnce(Self) -> R
Pass Drain
through a closure, eg. to wrap into another Drain
. Read more
fn filter<F>(self, f: F) -> Filter<Self, F> where Self: Sized, F: Fn(&Record) -> bool + 'static + Send + Sync
Filter logging records passed to Drain
Read more
fn filter_level(self, level: Level) -> LevelFilter<Self> where Self: Sized
Filter logging records passed to Drain
(by level) Read more
fn map_err<F, E>(self, f: F) -> MapError<Self, E> where Self: Sized, F: 'static + Sync + Send + Fn(Self::Err) -> E
Map logging errors returned by this drain Read more
fn ignore_res(self) -> IgnoreResult<Self> where Self: Sized
Ignore results returned by this drain Read more