diff options
Diffstat (limited to 'native/src/hasher.rs')
-rw-r--r-- | native/src/hasher.rs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/native/src/hasher.rs b/native/src/hasher.rs new file mode 100644 index 00000000..9f6aacce --- /dev/null +++ b/native/src/hasher.rs @@ -0,0 +1,19 @@ +/// The hasher used to compare layouts. +#[derive(Debug)] +pub struct Hasher(twox_hash::XxHash64); + +impl Default for Hasher { + fn default() -> Self { + Hasher(twox_hash::XxHash64::default()) + } +} + +impl core::hash::Hasher for Hasher { + fn write(&mut self, bytes: &[u8]) { + self.0.write(bytes) + } + + fn finish(&self) -> u64 { + self.0.finish() + } +} |