mirror of
https://github.com/bootandy/dust.git
synced 2026-06-08 11:29:05 +03:00
hack
This commit is contained in:
+14
-6
@@ -326,23 +326,31 @@ fn print_this_node(node_to_print: &Node, is_biggest: bool, depth: u8, indentatio
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn human_readable_number(size: u64) -> (String) {
|
fn human_readable_number(size: u64) -> (String) {
|
||||||
|
// we need the block size of the OS here
|
||||||
|
//
|
||||||
let units = vec!["T", "G", "M", "K"]; //make static
|
let units = vec!["T", "G", "M", "K"]; //make static
|
||||||
|
let bytes_per_block = 512;
|
||||||
|
//return format!("{}B", size);
|
||||||
|
|
||||||
for (i, u) in units.iter().enumerate() {
|
for (i, u) in units.iter().enumerate() {
|
||||||
let marker = 1024u64.pow((units.len() - i) as u32);
|
let marker = 1024u64.pow((units.len() - i) as u32);
|
||||||
if size >= marker {
|
if size * bytes_per_block >= marker {
|
||||||
if size / marker < 10 {
|
if size * bytes_per_block / marker < 10 {
|
||||||
return format!("{:.1}{}", (size as f32 / marker as f32), u);
|
return format!(
|
||||||
|
"{:.1}{}",
|
||||||
|
((size * bytes_per_block) as f32 / marker as f32),
|
||||||
|
u
|
||||||
|
);
|
||||||
} else {
|
} else {
|
||||||
return format!("{}{}", (size / marker), u);
|
return format!("{}{}", (size * bytes_per_block / marker), u);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return format!("{}B", size);
|
return format!("{}B", size * bytes_per_block);
|
||||||
}
|
}
|
||||||
|
|
||||||
mod tests {
|
mod tests {
|
||||||
use super::human_readable_number;
|
use super::*;
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_human_readable_number() {
|
fn test_human_readable_number() {
|
||||||
|
|||||||
Reference in New Issue
Block a user