Struct indicatif_log_bridge::LogWrapper

source ·
pub struct LogWrapper<L: Log> { /* private fields */ }
Expand description

Wraps a MultiProgress and a Log implementor, calling .suspend on the MultiProgress while writing the log message, thereby preventing progress bars and logs from getting mixed up.

You simply have to add every ProgressBar to the passed MultiProgress.

Implementations§

source§

impl<L: Log + 'static> LogWrapper<L>

source

pub fn new(bar: MultiProgress, log: L) -> Self

source

pub fn try_init(self) -> Result<(), SetLoggerError>

Installs this as the global logger.

Tries to find the correct argument to log::set_max_level by reading the logger configuration, you may want to set it manually though. For more details read the known issues.

source

pub fn multi(&self) -> MultiProgress

Trait Implementations§

source§

impl<L: Log> Log for LogWrapper<L>

source§

fn enabled(&self, metadata: &Metadata<'_>) -> bool

Determines if a log message with the specified metadata would be logged. Read more
source§

fn log(&self, record: &Record<'_>)

Logs the Record. Read more
source§

fn flush(&self)

Flushes any buffered records. Read more

Auto Trait Implementations§

§

impl<L> Freeze for LogWrapper<L>
where L: Freeze,

§

impl<L> RefUnwindSafe for LogWrapper<L>
where L: RefUnwindSafe,

§

impl<L> Send for LogWrapper<L>

§

impl<L> Sync for LogWrapper<L>

§

impl<L> Unpin for LogWrapper<L>
where L: Unpin,

§

impl<L> UnwindSafe for LogWrapper<L>
where L: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.