Use library for progress

This commit is contained in:
ByteDream 2022-12-22 14:45:56 +01:00
parent 86759557fe
commit 17fa045c32
9 changed files with 307 additions and 295 deletions

View file

@ -1,10 +1,21 @@
use log::info;
pub struct ProgressHandler;
pub struct ProgressHandler {
pub(crate) stopped: bool,
}
impl Drop for ProgressHandler {
fn drop(&mut self) {
info!(target: "progress_end", "")
if !self.stopped {
info!(target: "progress_end", "")
}
}
}
impl ProgressHandler {
pub(crate) fn stop<S: AsRef<str>>(mut self, msg: S) {
self.stopped = true;
info!(target: "progress_end", "{}", msg.as_ref())
}
}
@ -12,7 +23,7 @@ macro_rules! progress {
($($arg:tt)+) => {
{
log::info!(target: "progress", $($arg)+);
$crate::utils::log::ProgressHandler{}
$crate::utils::log::ProgressHandler{stopped: false}
}
}
}