The performance complaints seem to be mostly about buffer management. Rust hashers may flush their internal buffers whenever they want, as long as it's deterministic:<p>> Thus to produce the same hash value, Hash implementations must ensure for equivalent items that exactly the same sequence of calls is made – the same methods with the same parameters in the same order.<p><a href="https://doc.rust-lang.org/std/hash/trait.Hasher.html" rel="nofollow">https://doc.rust-lang.org/std/hash/trait.Hasher.html</a>