CBloomFilter::clear() method
This commit is contained in:
parent
6259937388
commit
8fbf03995d
3 changed files with 13 additions and 0 deletions
|
@ -94,6 +94,13 @@ bool CBloomFilter::contains(const uint256& hash) const
|
||||||
return contains(data);
|
return contains(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CBloomFilter::clear()
|
||||||
|
{
|
||||||
|
vData.assign(vData.size(),0);
|
||||||
|
isFull = false;
|
||||||
|
isEmpty = true;
|
||||||
|
}
|
||||||
|
|
||||||
bool CBloomFilter::IsWithinSizeConstraints() const
|
bool CBloomFilter::IsWithinSizeConstraints() const
|
||||||
{
|
{
|
||||||
return vData.size() <= MAX_BLOOM_FILTER_SIZE && nHashFuncs <= MAX_HASH_FUNCS;
|
return vData.size() <= MAX_BLOOM_FILTER_SIZE && nHashFuncs <= MAX_HASH_FUNCS;
|
||||||
|
|
|
@ -78,6 +78,8 @@ public:
|
||||||
bool contains(const COutPoint& outpoint) const;
|
bool contains(const COutPoint& outpoint) const;
|
||||||
bool contains(const uint256& hash) const;
|
bool contains(const uint256& hash) const;
|
||||||
|
|
||||||
|
void clear();
|
||||||
|
|
||||||
// True if the size is <= MAX_BLOOM_FILTER_SIZE and the number of hash functions is <= MAX_HASH_FUNCS
|
// True if the size is <= MAX_BLOOM_FILTER_SIZE and the number of hash functions is <= MAX_HASH_FUNCS
|
||||||
// (catch a filter which was just deserialized which was too big)
|
// (catch a filter which was just deserialized which was too big)
|
||||||
bool IsWithinSizeConstraints() const;
|
bool IsWithinSizeConstraints() const;
|
||||||
|
|
|
@ -45,6 +45,10 @@ BOOST_AUTO_TEST_CASE(bloom_create_insert_serialize)
|
||||||
expected[i] = (char)vch[i];
|
expected[i] = (char)vch[i];
|
||||||
|
|
||||||
BOOST_CHECK_EQUAL_COLLECTIONS(stream.begin(), stream.end(), expected.begin(), expected.end());
|
BOOST_CHECK_EQUAL_COLLECTIONS(stream.begin(), stream.end(), expected.begin(), expected.end());
|
||||||
|
|
||||||
|
BOOST_CHECK_MESSAGE( filter.contains(ParseHex("99108ad8ed9bb6274d3980bab5a85c048f0950c8")), "BloomFilter doesn't contain just-inserted object!");
|
||||||
|
filter.clear();
|
||||||
|
BOOST_CHECK_MESSAGE( !filter.contains(ParseHex("99108ad8ed9bb6274d3980bab5a85c048f0950c8")), "BloomFilter should be empty!");
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(bloom_create_insert_serialize_with_tweak)
|
BOOST_AUTO_TEST_CASE(bloom_create_insert_serialize_with_tweak)
|
||||||
|
|
Loading…
Reference in a new issue