Expand description
task module mainly defines the task model
§Example
ⓘ
use std::io;
use std::sync::Arc;
use clap::Parser;
use rsb::{Arg, Task};
use rsb::arg::OutputFormat;
let arg = Arg::parse();
print_tip(&arg)?;
let pb = create_progress_bar(&arg);
let output_format = arg.output_format;
let task = Arc::new(Task::new(arg, Some(pb))?).run()?;
let result = match output_format {
OutputFormat::Text => task.text_output()?,
OutputFormat::Json => {
let output = task.json_output()?;
serde_json::to_string_pretty(&output)?
}
};
writeln!(&mut io::stdout(), "{result}")?;