blossom/bloom~ BloomFilter

new BloomFilter(sizeopt, slicesopt, bufferopt)

Classic Bloom filter dimensioned by the size of the bitfield and the number of hash functions.

Parameters:
NameTypeAttributesDefaultDescription
sizenumber<optional>
16

Total bits in the underlying buffer

slicesnumber<optional>
2

Number of hash functions

bufferBuffer<optional>
Buffer.alloc(size)

Underlying buffer to use

Methods

add(key) → {BloomFilter}

Add an item to the Bloom filter.

Parameters:
NameTypeDescription
keystring | Buffer

Item to add

Returns:
Type: 
BloomFilter

has(key) → {boolean}

Check if an item probably exists in the Bloom filter

Parameters:
NameTypeDescription
keystring | Buffer

Item to check

Returns:
Type: 
boolean

(static) destringify(data) → {BloomFilter}

Create a BloomFilter from an object.

Parameters:
NameTypeDescription
dataobject
Properties
NameTypeDescription
sizenumber

Bloom filter size

slicesnumber

Number of hashes to use.

bitfieldobject
Properties
NameTypeDescription
bufferstring | Buffer | array

Underlying buffer to use

Returns:
Type: 
BloomFilter