Struct slog::Fuse
[−]
[src]
pub struct Fuse<D: Drain>(pub D) where D::Err: Debug;
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> where D::Err: Debug
[src]
fn new(drain: D) -> Self
Create Fuse
wrapping given drain
Trait Implementations
impl<D: Debug + Drain> Debug for Fuse<D> where D::Err: Debug
[src]
impl<D: Clone + Drain> Clone for Fuse<D> where D::Err: Debug
[src]
fn clone(&self) -> Fuse<D>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
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: FilterFn
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: MapErrFn<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
fn fuse(self) -> Fuse<Self> where Self::Err: Debug, Self: Sized
Make Self
panic when returning any errors Read more