Fix Lookup<Vec<T>> impls

This commit is contained in:
Lukas Wirth 2024-12-17 11:17:06 +01:00
parent 3c7f1694c9
commit f04d64537b

View file

@ -394,9 +394,7 @@ impl Lookup<String> for &str {
impl<A: Hash + Eq + PartialEq<T> + Clone + Lookup<T>, T> Lookup<Vec<T>> for &[A] { impl<A: Hash + Eq + PartialEq<T> + Clone + Lookup<T>, T> Lookup<Vec<T>> for &[A] {
fn hash<H: Hasher>(&self, h: &mut H) { fn hash<H: Hasher>(&self, h: &mut H) {
for a in *self { Hash::hash(self, h);
Hash::hash(a, h);
}
} }
fn eq(&self, data: &Vec<T>) -> bool { fn eq(&self, data: &Vec<T>) -> bool {
@ -410,9 +408,7 @@ impl<A: Hash + Eq + PartialEq<T> + Clone + Lookup<T>, T> Lookup<Vec<T>> for &[A]
impl<const N: usize, A: Hash + Eq + PartialEq<T> + Clone + Lookup<T>, T> Lookup<Vec<T>> for [A; N] { impl<const N: usize, A: Hash + Eq + PartialEq<T> + Clone + Lookup<T>, T> Lookup<Vec<T>> for [A; N] {
fn hash<H: Hasher>(&self, h: &mut H) { fn hash<H: Hasher>(&self, h: &mut H) {
for a in self { Hash::hash(self, h);
Hash::hash(a, h);
}
} }
fn eq(&self, data: &Vec<T>) -> bool { fn eq(&self, data: &Vec<T>) -> bool {