[bloom] Candidate Boost Bloom library: request for endorsements

Hi, I've been working during the last few months in a library I would like to propose for Boost: Repo: https://github.com/joaquintides/bloom Docs: https://master.bloom.cpp.al/ (Candidate) 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 //... } } If you deem the library interesting and think it stands a chance of being accepted into Boost, allow me to request your endorsement. Best, Joaquin M Lopez Munoz

Joaquin M López Muñoz wrote:
Hi,
I've been working during the last few months in a library I would like to propose for Boost:
Repo: https://github.com/joaquintides/bloom Docs: https://master.bloom.cpp.al/
(Candidate) 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.
I endorse this library.
participants (3)
-
Christian Mazakas
-
Joaquin M López Muñoz
-
Peter Dimov