Struct tracing_subscriber::fmt::writer::BoxMakeWriter   
source · [−]pub struct BoxMakeWriter { /* private fields */ }Expand description
A writer that erases the specific io::Write and MakeWriter types being used.
This is useful in cases where the concrete type of the writer cannot be known until runtime.
Examples
A function that returns a Subscriber that will write to either stdout or stderr:
fn dynamic_writer(use_stderr: bool) -> impl Subscriber {
    let writer = if use_stderr {
        BoxMakeWriter::new(std::io::stderr)
    } else {
        BoxMakeWriter::new(std::io::stdout)
    };
    tracing_subscriber::fmt().with_writer(writer).finish()
}Implementations
sourceimpl BoxMakeWriter
 
impl BoxMakeWriter
sourcepub fn new<M>(make_writer: M) -> Self where
    M: MakeWriter + Send + Sync + 'static,
    M::Writer: Write + 'static, 
 
pub fn new<M>(make_writer: M) -> Self where
    M: MakeWriter + Send + Sync + 'static,
    M::Writer: Write + 'static, 
Constructs a BoxMakeWriter wrapping a type implementing MakeWriter.
Trait Implementations
sourceimpl Debug for BoxMakeWriter
 
impl Debug for BoxMakeWriter
sourceimpl MakeWriter for BoxMakeWriter
 
impl MakeWriter for BoxMakeWriter
type Writer = Box<dyn Write + 'static, Global>
type Writer = Box<dyn Write + 'static, Global>
The concrete io::Write implementation returned by make_writer. Read more
sourcefn make_writer(&self) -> Self::Writer
 
fn make_writer(&self) -> Self::Writer
Auto Trait Implementations
impl !RefUnwindSafe for BoxMakeWriter
impl Send for BoxMakeWriter
impl Sync for BoxMakeWriter
impl Unpin for BoxMakeWriter
impl !UnwindSafe for BoxMakeWriter
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
    T: ?Sized, 
 
impl<T> BorrowMut<T> for T where
    T: ?Sized, 
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
 
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
 
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
 
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
 
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<M> MakeWriterExt for M where
    M: MakeWriter, 
 
impl<M> MakeWriterExt for M where
    M: MakeWriter, 
sourcefn with_max_level(self, level: Level) -> WithMaxLevel<Self> where
    Self: Sized, 
 
fn with_max_level(self, level: Level) -> WithMaxLevel<Self> where
    Self: Sized, 
Wraps self and returns a MakeWriter that will only write output
for events at or below the provided verbosity Level. For instance,
Level::TRACE is considered to be _more verbosethanLevel::INFO`. Read more
sourcefn with_min_level(self, level: Level) -> WithMinLevel<Self> where
    Self: Sized, 
 
fn with_min_level(self, level: Level) -> WithMinLevel<Self> where
    Self: Sized, 
Wraps self and returns a MakeWriter that will only write output
for events at or above the provided verbosity Level. Read more
sourcefn with_filter<F>(self, filter: F) -> WithFilter<Self, F> where
    Self: Sized,
    F: Fn(&Metadata<'_>) -> bool, 
 
fn with_filter<F>(self, filter: F) -> WithFilter<Self, F> where
    Self: Sized,
    F: Fn(&Metadata<'_>) -> bool, 
Wraps self with a predicate that takes a span or event’s Metadata
and returns a bool. The returned MakeWriter’s
MakeWriter::make_writer_for method will check the predicate to
determine if  a writer should be produced for a given span or event. Read more
sourcefn and<B>(self, other: B) -> Tee<Self, B>ⓘNotable traits for Tee<A, B>impl<A, B> Write for Tee<A, B> where
    A: Write,
    B: Write,  where
    Self: Sized,
    B: MakeWriter + Sized, 
 
fn and<B>(self, other: B) -> Tee<Self, B>ⓘNotable traits for Tee<A, B>impl<A, B> Write for Tee<A, B> where
    A: Write,
    B: Write,  where
    Self: Sized,
    B: MakeWriter + Sized, 
A: Write,
B: Write,
Combines self with another type implementing MakeWriter, returning
a new MakeWriter that produces [writers] that write to both
outputs. Read more
sourcefn or_else<W, B>(self, other: B) -> OrElse<Self, B> where
    Self: MakeWriter<Writer = OptionalWriter<W>> + Sized,
    B: MakeWriter + Sized,
    W: Write, 
 
fn or_else<W, B>(self, other: B) -> OrElse<Self, B> where
    Self: MakeWriter<Writer = OptionalWriter<W>> + Sized,
    B: MakeWriter + Sized,
    W: Write, 
Combines self with another type implementing MakeWriter, returning
a new MakeWriter that calls other’s [make_writer] if self’s
make_writer returns OptionalWriter::none. Read more
sourceimpl<T> WithSubscriber for T
 
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
    S: Into<Dispatch>, 
 
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
    S: Into<Dispatch>, 
Attaches the provided Subscriber to this type, returning a
WithDispatch wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
 
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber to this type, returning a
WithDispatch wrapper. Read more
