From 2ebe09dacb12d1d0c02acbd55e2387b052616f47 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Fri, 30 Aug 2019 01:54:41 +0200 Subject: Make `Hasher` opaque --- src/hasher.rs | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'src/hasher.rs') diff --git a/src/hasher.rs b/src/hasher.rs index a930fa13..2aa10336 100644 --- a/src/hasher.rs +++ b/src/hasher.rs @@ -1,2 +1,18 @@ /// The hasher used to compare layouts. -pub type Hasher = twox_hash::XxHash; +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() + } +} -- cgit