1mod dir_comparer;
2mod file_comparer;
3pub(crate) mod file_hash_cache;
4mod file_hasher;
5
6pub use dir_comparer::DirectoryComparer;
7pub use file_comparer::{Classification, FileComparer, FileComparisonResult};
8pub use file_hasher::FileHasher;
9
10pub(crate) fn human_readable_size(size: u64) -> String {
11 const MB: u64 = 1024 * 1024;
12 const GB: u64 = 1024 * 1024 * 1024;
13 if size >= GB {
14 format!("{:.1}GB", size as f64 / GB as f64)
15 } else if size >= MB {
16 format!("{:.1}MB", size as f64 / MB as f64)
17 } else {
18 format!("{} bytes", size)
19 }
20}