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: 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
fn fuse(self) -> Fuse<Self> where Self::Err: Debug, Self: Sized
Make Self panic when returning any errors Read more