diff --git a/src/map.rs b/src/map.rs index 04751a6..e6a8d72 100644 --- a/src/map.rs +++ b/src/map.rs @@ -33,15 +33,6 @@ pub trait Equivalent: Sized { fn matches(&self, other: &T) -> bool; } -impl Equivalent for T -where - T: PartialEq, -{ - fn matches(&self, other: &T) -> bool { - self == other - } -} - pub trait Hashes { fn hashed(&self) -> Hashed; } @@ -376,6 +367,12 @@ impl Equivalent for SetEntry { } } +impl Equivalent for SetEntry where K: Equivalent { + fn matches(&self, other: &K) -> bool { + other.matches(&self.0.as_ref().unwrap()) + } +} + impl Set { pub fn resize(&mut self, len: usize) { self.0.resize(len)