Struct progression::Config
source · pub struct Config<'a> {
pub width: Option<u64>,
pub default_width: u64,
pub delimiters: (char, char),
pub style: Style,
pub space_char: char,
pub prefix: &'a str,
pub unit: &'a str,
pub num_width: usize,
pub throttle_millis: u64,
}
Fields§
§width: Option<u64>
§default_width: u64
§delimiters: (char, char)
§style: Style
§space_char: char
§prefix: &'a str
§unit: &'a str
§num_width: usize
§throttle_millis: u64
Implementations§
source§impl Config<'_>
impl Config<'_>
pub fn ascii() -> Self
sourcepub fn unicode() -> Self
pub fn unicode() -> Self
Examples found in repository?
examples/example.rs (line 15)
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
fn main() {
// Default
for _ in progression::bar(0..1_000) {
thread::sleep(Duration::from_millis(1));
}
// Cargo style
for _ in progression::bar_with_config(0..1_000, progression::Config::cargo()) {
thread::sleep(Duration::from_millis(1));
}
// Unicode style
for _ in progression::bar_with_config(0..1_000, progression::Config::unicode()) {
thread::sleep(Duration::from_millis(1));
}
// Uses `slice.chunks` internally for lower overhead on large numbers of items
for _ in progression::bar_chunks(10, &[0; 1_000]) {
thread::sleep(Duration::from_millis(1));
}
// Custom
for _ in progression::bar_with_config(0..1_000, progression::Config { style: progression::Style::Mono('·'), ..Default::default() }) {
thread::sleep(Duration::from_millis(1));
}
// Manual
let items = vec![1, 2, 3, 4, 5];
let bar = progression::Bar::new(items.len() as u64, progression::Config { prefix: "(items) ", ..progression::Config::cargo() });
for _ in items {
thread::sleep(Duration::from_millis(100));
bar.inc(1);
}
bar.finish();
}
sourcepub fn cargo() -> Self
pub fn cargo() -> Self
Examples found in repository?
examples/example.rs (line 10)
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
fn main() {
// Default
for _ in progression::bar(0..1_000) {
thread::sleep(Duration::from_millis(1));
}
// Cargo style
for _ in progression::bar_with_config(0..1_000, progression::Config::cargo()) {
thread::sleep(Duration::from_millis(1));
}
// Unicode style
for _ in progression::bar_with_config(0..1_000, progression::Config::unicode()) {
thread::sleep(Duration::from_millis(1));
}
// Uses `slice.chunks` internally for lower overhead on large numbers of items
for _ in progression::bar_chunks(10, &[0; 1_000]) {
thread::sleep(Duration::from_millis(1));
}
// Custom
for _ in progression::bar_with_config(0..1_000, progression::Config { style: progression::Style::Mono('·'), ..Default::default() }) {
thread::sleep(Duration::from_millis(1));
}
// Manual
let items = vec![1, 2, 3, 4, 5];
let bar = progression::Bar::new(items.len() as u64, progression::Config { prefix: "(items) ", ..progression::Config::cargo() });
for _ in items {
thread::sleep(Duration::from_millis(100));
bar.inc(1);
}
bar.finish();
}