1
Fork 0

Auto merge of #91903 - tmiasko:bit-set-hash, r=jackh726

Implement StableHash for BitSet and BitMatrix via Hash

This fixes an issue where bit sets / bit matrices the same word
content but a different domain size would receive the same hash.
This commit is contained in:
bors 2021-12-21 05:42:10 +00:00
commit 87e8639d8d
3 changed files with 33 additions and 6 deletions

View file

@ -478,14 +478,14 @@ where
}
impl<I: vec::Idx, CTX> HashStable<CTX> for bit_set::BitSet<I> {
fn hash_stable(&self, ctx: &mut CTX, hasher: &mut StableHasher) {
self.words().hash_stable(ctx, hasher);
fn hash_stable(&self, _ctx: &mut CTX, hasher: &mut StableHasher) {
::std::hash::Hash::hash(self, hasher);
}
}
impl<R: vec::Idx, C: vec::Idx, CTX> HashStable<CTX> for bit_set::BitMatrix<R, C> {
fn hash_stable(&self, ctx: &mut CTX, hasher: &mut StableHasher) {
self.words().hash_stable(ctx, hasher);
fn hash_stable(&self, _ctx: &mut CTX, hasher: &mut StableHasher) {
::std::hash::Hash::hash(self, hasher);
}
}