mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-08-20 10:52:25 +00:00
core/state/pruner: use Hash instead of Hasher interface
This commit is contained in:
parent
c22a1d98c7
commit
c09e4c5699
1 changed files with 6 additions and 11 deletions
|
|
@ -30,14 +30,9 @@ import (
|
|||
// stateBloomHasher is a wrapper around a byte blob to satisfy the interface API
|
||||
// requirements of the bloom library used. It's used to convert a trie hash or
|
||||
// contract code hash into a 64 bit mini hash.
|
||||
type stateBloomHasher []byte
|
||||
|
||||
func (f stateBloomHasher) Write(p []byte) (n int, err error) { panic("not implemented") }
|
||||
func (f stateBloomHasher) Sum(b []byte) []byte { panic("not implemented") }
|
||||
func (f stateBloomHasher) Reset() { panic("not implemented") }
|
||||
func (f stateBloomHasher) BlockSize() int { panic("not implemented") }
|
||||
func (f stateBloomHasher) Size() int { return 8 }
|
||||
func (f stateBloomHasher) Sum64() uint64 { return binary.BigEndian.Uint64(f) }
|
||||
func stateBloomHasher(f []byte) uint64 {
|
||||
return binary.BigEndian.Uint64(f)
|
||||
}
|
||||
|
||||
// stateBloom is a bloom filter used during the state conversion(snapshot->state).
|
||||
// The keys of all generated entries will be recorded here so that in the pruning
|
||||
|
|
@ -113,10 +108,10 @@ func (bloom *stateBloom) Put(key []byte, value []byte) error {
|
|||
if !isCode {
|
||||
return errors.New("invalid entry")
|
||||
}
|
||||
bloom.bloom.Add(stateBloomHasher(codeKey))
|
||||
bloom.bloom.AddHash(stateBloomHasher(codeKey))
|
||||
return nil
|
||||
}
|
||||
bloom.bloom.Add(stateBloomHasher(key))
|
||||
bloom.bloom.AddHash(stateBloomHasher(key))
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
@ -128,5 +123,5 @@ func (bloom *stateBloom) Delete(key []byte) error { panic("not supported") }
|
|||
// - If it says yes, the key may be contained
|
||||
// - If it says no, the key is definitely not contained.
|
||||
func (bloom *stateBloom) Contain(key []byte) bool {
|
||||
return bloom.bloom.Contains(stateBloomHasher(key))
|
||||
return bloom.bloom.ContainsHash(stateBloomHasher(key))
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue