removed old bloom
This commit is contained in:
parent
d56d0c64aa
commit
1025d097fd
@ -1,47 +0,0 @@
|
||||
package chain
|
||||
|
||||
type BloomFilter struct {
|
||||
bin []byte
|
||||
}
|
||||
|
||||
func NewBloomFilter(bin []byte) *BloomFilter {
|
||||
if bin == nil {
|
||||
bin = make([]byte, 256)
|
||||
}
|
||||
|
||||
return &BloomFilter{
|
||||
bin: bin,
|
||||
}
|
||||
}
|
||||
|
||||
func (self *BloomFilter) Set(addr []byte) {
|
||||
if len(addr) < 8 {
|
||||
chainlogger.Warnf("err: bloom set to small: %x\n", addr)
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
for _, i := range addr[len(addr)-8:] {
|
||||
self.bin[i] = 1
|
||||
}
|
||||
}
|
||||
|
||||
func (self *BloomFilter) Search(addr []byte) bool {
|
||||
if len(addr) < 8 {
|
||||
chainlogger.Warnf("err: bloom search to small: %x\n", addr)
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
for _, i := range addr[len(addr)-8:] {
|
||||
if self.bin[i] == 0 {
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
func (self *BloomFilter) Bin() []byte {
|
||||
return self.bin
|
||||
}
|
@ -1,20 +0,0 @@
|
||||
package chain
|
||||
|
||||
import "testing"
|
||||
|
||||
func TestBloomFilter(t *testing.T) {
|
||||
bf := NewBloomFilter(nil)
|
||||
|
||||
a := []byte{1, 2, 3, 4, 5, 6, 7, 8, 9, 0}
|
||||
bf.Set(a)
|
||||
|
||||
b := []byte{10, 11, 12, 13, 14, 15, 16, 17, 18, 19}
|
||||
|
||||
if bf.Search(a) == false {
|
||||
t.Error("Expected 'a' to yield true using a bloom filter")
|
||||
}
|
||||
|
||||
if bf.Search(b) {
|
||||
t.Error("Expected 'b' not to field trie using a bloom filter")
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user