pub struct BarBuilder { /* private fields */ }
Expand description
Helper struct for building a progress bar.
§Examples
use progress_string::BarBuilder;
let bar = BarBuilder::new()
.total(1000000)
.width(20)
.empty_char('0')
.full_char('X')
.include_percent()
.build();
the above would look something like this
[XXXXXXXXXX0000000000] 50.00%
Implementations§
Source§impl BarBuilder
impl BarBuilder
Sourcepub fn total(self, total: usize) -> BarBuilder
pub fn total(self, total: usize) -> BarBuilder
Update the total (default 100).
§Examples
use progress_string::BarBuilder;
let thousand = BarBuilder::new().total(1000).build();
// yields [█ ]
Sourcepub fn width(self, width: usize) -> BarBuilder
pub fn width(self, width: usize) -> BarBuilder
Update the progress section’s width (default 50).
use progress_string::BarBuilder;
let bar = BarBuilder::new().width(10);
// yields [ ]
Sourcepub fn empty_char(self, character: char) -> BarBuilder
pub fn empty_char(self, character: char) -> BarBuilder
Update the character you want to use as an empty section of the progress bar (default ’ ’).
§Examples
use progress_string::BarBuilder;
let zero_emp = BarBuilder::new().empty_char('0').build();
// yields
// [██████████00000000000]
Sourcepub fn full_char(self, character: char) -> BarBuilder
pub fn full_char(self, character: char) -> BarBuilder
Update the character you want to use as a full section of the bar (default ‘█’).
§Examples
use progress_string::BarBuilder;
let x_bar = BarBuilder::new().full_char('X').build();
// yields [XXXXXX ]
let y_bar = BarBuilder::new().full_char('Y').build();
// yields [YYYYYY ]
Sourcepub fn leading_char(self, character: impl Into<Option<char>>) -> BarBuilder
pub fn leading_char(self, character: impl Into<Option<char>>) -> BarBuilder
Update the character you want to use to lead the full section of the bar
(defaults to the value of full_char
if not provided).
§Examples
use progress_string::BarBuilder;
let x_bar = BarBuilder::new()
.full_char('X')
.leading_char('}')
.build();
// yields [XXXXXX} ]
let y_bar = BarBuilder::new()
.full_char('Y')
.leading_char(')')
.build();
// yields [YYYYYY) ]
Sourcepub fn include_percent(self) -> BarBuilder
pub fn include_percent(self) -> BarBuilder
Update the bar to include the percent after the bar representation (default false
).
§Examples
use progress_string::BarBuilder;
let no_p = BarBuilder::new().include_percent().build();
// yields [██████████ ] 50.00%
let with_p = BarBuilder::new();
// yields [██████████ ]
Sourcepub fn include_numbers(self) -> BarBuilder
pub fn include_numbers(self) -> BarBuilder
Update the bar to include the divison after the bar representation.
§Examples
use progress_string::BarBuilder;
let mut no_n = BarBuilder::new().build();
no_n.replace(50);
// yields [██████████ ]
let mut with_n = BarBuilder::new().include_numbers().build();
with_n.replace(50)
// yields [██████████ ] 50/100
Trait Implementations§
Auto Trait Implementations§
impl Freeze for BarBuilder
impl RefUnwindSafe for BarBuilder
impl Send for BarBuilder
impl Sync for BarBuilder
impl Unpin for BarBuilder
impl UnwindSafe for BarBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more