1pub mod formatter;
2pub mod prompts;
3
4pub mod arc_ext;
5pub mod disposable;
6pub mod iterator_ext;
7pub mod vec_ext;
8pub use itertools;
9
10pub mod security;
11
12#[cfg(feature = "log")]
13pub mod log;
14
15#[cfg(feature = "path-utils")]
16pub mod paths;
17
18#[cfg(feature = "caching")]
19pub mod caching;
20
21#[cfg(feature = "commands")]
22pub mod commands;
23
24#[cfg(feature = "id")]
25pub mod id;
26
27#[cfg(feature = "hash-utils")]
28pub fn hash_file(path: impl AsRef<std::path::Path>) -> std::io::Result<blake3::Hash> {
29 let mut hasher = blake3::Hasher::new();
30 hasher.update_mmap(path)?;
31 Ok(hasher.finalize())
32}