summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFallenhh <fallen2hh@gmail.com>2020-06-19 23:03:33 +0800
committerGitHub <noreply@github.com>2020-06-19 11:03:33 -0400
commit1c5ab8bf1acf8347d39da13c2a9d59c9ba003f3c (patch)
tree51347ef1ee6e4c5749c44b6b299d3fdf849b9c85
parent5c8ce06c9223c71c6f5cf583cc6dd61d8f518290 (diff)
refactor(cli/checksum): use map to generate hex string (#6382)
-rw-r--r--cli/checksum.rs14
1 files changed, 6 insertions, 8 deletions
diff --git a/cli/checksum.rs b/cli/checksum.rs
index 8696f93f7..ca7590d8c 100644
--- a/cli/checksum.rs
+++ b/cli/checksum.rs
@@ -1,15 +1,13 @@
-use std::fmt::Write;
-
pub fn gen(v: Vec<&[u8]>) -> String {
let mut ctx = ring::digest::Context::new(&ring::digest::SHA256);
for src in v.iter() {
ctx.update(src);
}
let digest = ctx.finish();
- let mut out = String::new();
- // TODO There must be a better way to do this...
- for byte in digest.as_ref() {
- write!(&mut out, "{:02x}", byte).unwrap();
- }
- out
+ let out: Vec<String> = digest
+ .as_ref()
+ .iter()
+ .map(|byte| format!("{:02x}", byte))
+ .collect();
+ out.join("")
}