Struct indicatif::MultiProgress[][src]

pub struct MultiProgress { /* fields omitted */ }
Expand description

Manages multiple progress bars from different threads

Implementations

impl MultiProgress[src]

pub fn new() -> MultiProgress[src]

Creates a new multi progress object.

Progress bars added to this object by default draw directly to stderr, and refresh a maximum of 15 times a second. To change the refresh rate set the draw target to one with a different refresh rate.

pub fn with_draw_target(draw_target: ProgressDrawTarget) -> MultiProgress[src]

Creates a new multi progress object with the given draw target.

pub fn set_draw_target(&self, target: ProgressDrawTarget)[src]

Sets a different draw target for the multiprogress bar.

pub fn set_move_cursor(&self, move_cursor: bool)[src]

Set whether we should try to move the cursor when possible instead of clearing lines.

This can reduce flickering, but do not enable it if you intend to change the number of progress bars.

pub fn add(&self, pb: ProgressBar) -> ProgressBar[src]

Adds a progress bar.

The progress bar added will have the draw target changed to a remote draw target that is intercepted by the multi progress object overriding custom ProgressDrawTarget settings.

pub fn insert(&self, index: usize, pb: ProgressBar) -> ProgressBar[src]

Inserts a progress bar.

The progress bar inserted at position index will have the draw target changed to a remote draw target that is intercepted by the multi progress object overriding custom ProgressDrawTarget settings.

If index >= MultiProgressState::objects.len(), the progress bar is added to the end of the list.

pub fn remove(&self, pb: &ProgressBar)[src]

Removes a progress bar.

The progress bar is removed only if it was previously inserted or added by the methods MultiProgress::insert or MultiProgress::add. If the passed progress bar does not satisfy the condition above, the remove method does nothing.

pub fn join(&self) -> Result<()>[src]

Waits for all progress bars to report that they are finished.

You need to call this as this will request the draw instructions from the remote progress bars. Not calling this will deadlock your program.

pub fn join_and_clear(&self) -> Result<()>[src]

Works like join but clears the progress bar in the end.

Trait Implementations

impl Debug for MultiProgress[src]

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

impl Default for MultiProgress[src]

fn default() -> MultiProgress[src]

Returns the “default value” for a type. Read more

impl Sync for MultiProgress[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

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

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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

Performs the conversion.