| 123456789101112131415161718192021222324 |
- static METRIC_PREFIXES: &'static [&'static str] = &[
- "", "K", "M", "G", "T", "P", "E", "Z", "Y"
- ];
- static IEC_PREFIXES: &'static [&'static str] = &[
- "", "Ki", "Mi", "Gi", "Ti", "Pi", "Ei", "Zi", "Yi"
- ];
- fn formatBytes(mut amount: u64, kilo: u64, prefixes: &[&str]) -> StrBuf {
- let mut prefix = 0;
- while amount > kilo {
- amount /= kilo;
- prefix += 1;
- }
- format!("{}{}", amount, prefixes[prefix])
- }
- pub fn formatBinaryBytes(amount: u64) -> StrBuf {
- formatBytes(amount, 1024, IEC_PREFIXES)
- }
- pub fn formatDecimalBytes(amount: u64) -> StrBuf {
- formatBytes(amount, 1000, METRIC_PREFIXES)
- }
|