use std::hash::Hasher; #[derive(Default, Clone, Copy, PartialEq, Eq)] pub struct NoHash(Option); impl Hasher for NoHash { fn write_u64(&mut self, i: u64) { if self.0.is_some() { panic!("called write_u64 twice") } else { self.0 = Some(i); } } fn write(&mut self, _: &[u8]) { unreachable!() } fn finish(&self) -> u64 { self.0.unwrap() } }