| Crates.io | boost_bloom |
| lib.rs | boost_bloom |
| version | 0.1.0 |
| created_at | 2025-08-30 03:10:25.510844+00 |
| updated_at | 2025-08-30 03:10:25.510844+00 |
| description | Boost C++ library boost_bloom packaged using Zanbil |
| homepage | |
| repository | https://github.com/zanbilify/boost_bloom |
| max_upload_size | |
| id | 1817209 |
| size | 459,050 |
Boost.Bloom provides the class template boost::bloom::filter that
can be configured to implement a classical Bloom filter
as well as variations discussed in the literature such as block filters, multiblock filters, and more.
#include <boost/bloom/filter.hpp>
#include <cassert>
#include <string>
int main()
{
// Bloom filter of strings with 5 bits set per insertion
using filter = boost::bloom::filter<std::string, 5>;
// create filter with a capacity of 1'000'000 **bits**
filter f(1'000'000);
// insert elements (they can't be erased, Bloom filters are insert-only)
f.insert("hello");
f.insert("Boost");
//...
// elements inserted are always correctly checked as such
assert(f.may_contain("hello") == true);
// elements not inserted may incorrectly be identified as such with a
// false positive rate (FPR) which is a function of the array capacity,
// the number of bits set per element and generally how the boost::bloom::filter
// was specified
if(f.may_contain("bye")) { // likely false
//...
}
}
conanfile.txt (the example requires at least Boost 1.89):[requires]
boost/[>=1.89.0]
[options]
boost:header_only=True
vcpkg install boost-bloom