mirror of
https://github.com/lifegpc/msg-tool.git
synced 2026-06-07 21:38:58 +08:00
Add a warning counter
This commit is contained in:
@@ -6,6 +6,7 @@ pub struct Counter {
|
||||
ok: AtomicUsize,
|
||||
ignored: AtomicUsize,
|
||||
error: AtomicUsize,
|
||||
warning: AtomicUsize,
|
||||
}
|
||||
|
||||
impl Counter {
|
||||
@@ -14,6 +15,7 @@ impl Counter {
|
||||
ok: AtomicUsize::new(0),
|
||||
ignored: AtomicUsize::new(0),
|
||||
error: AtomicUsize::new(0),
|
||||
warning: AtomicUsize::new(0),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,6 +23,10 @@ impl Counter {
|
||||
self.error.fetch_add(1, SeqCst);
|
||||
}
|
||||
|
||||
pub fn inc_warning(&self) {
|
||||
self.warning.fetch_add(1, SeqCst);
|
||||
}
|
||||
|
||||
pub fn inc(&self, result: ScriptResult) {
|
||||
match result {
|
||||
ScriptResult::Ok => self.ok.fetch_add(1, SeqCst),
|
||||
@@ -33,10 +39,11 @@ impl std::fmt::Display for Counter {
|
||||
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||
write!(
|
||||
f,
|
||||
"OK: {}, Ignored: {}, Error: {}",
|
||||
"OK: {}, Ignored: {}, Error: {}, Warning: {}",
|
||||
self.ok.load(SeqCst),
|
||||
self.ignored.load(SeqCst),
|
||||
self.error.load(SeqCst)
|
||||
self.error.load(SeqCst),
|
||||
self.warning.load(SeqCst),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,6 +47,7 @@ pub fn encode_string(
|
||||
"Warning: Some characters could not be encoded in Shift-JIS: {}",
|
||||
data
|
||||
);
|
||||
crate::COUNTER.inc_warning();
|
||||
}
|
||||
Ok(result.0.to_vec())
|
||||
}
|
||||
@@ -60,6 +61,7 @@ pub fn encode_string(
|
||||
"Warning: Some characters could not be encoded in GB2312: {}",
|
||||
data
|
||||
);
|
||||
crate::COUNTER.inc_warning();
|
||||
}
|
||||
Ok(result.0.to_vec())
|
||||
}
|
||||
|
||||
@@ -123,6 +123,7 @@ pub fn encode_string(cp: u32, data: &str, check: bool) -> Result<Vec<u8>, WinErr
|
||||
"Warning: Some characters could not be encoded in code page {}: {}",
|
||||
cp, data
|
||||
);
|
||||
crate::COUNTER.inc_warning();
|
||||
}
|
||||
}
|
||||
if result == 0 {
|
||||
|
||||
Reference in New Issue
Block a user