bloomfilter

A fast Bloom filter implementation in Rust

Latest version: 3.0.1 registry icon
Maintenance score
17
Safety score
100
Popularity score
75
Check your open source dependency risks. Get immediate insight about security, stability and licensing risks.
Security
  Vulnerabilities
Version Suggest Low Medium High Critical
3.0.1 0 0 0 0 0
3.0.0 0 0 0 0 0
2.0.0 0 0 0 0 0
1.0.16 0 0 0 0 0
1.0.15 0 0 0 0 0
1.0.14 0 0 0 0 0
1.0.13 0 0 0 0 0
1.0.12 0 0 0 0 0
1.0.11 0 0 0 0 0
1.0.10 0 0 0 0 0
1.0.9 0 0 0 0 0
1.0.8 0 0 0 0 0
1.0.7 0 0 0 0 0
1.0.6 0 0 0 0 0
1.0.5 0 0 0 0 0
1.0.4 0 0 0 0 0
1.0.3 0 0 0 0 0
1.0.2 0 0 0 0 0
1.0.1 0 0 0 0 0
0.0.12 0 0 0 0 0
0.0.10 0 0 0 0 0
0.0.9 0 0 0 0 0
0.0.8 0 0 0 0 0
0.0.7 0 0 0 0 0
0.0.6 0 0 0 0 0
0.0.5 0 0 0 0 0
0.0.4 0 0 0 0 0
0.0.3 0 0 0 0 0
0.0.2 0 0 0 0 0
0.0.1 0 0 0 0 0

Stability
Latest release:

3.0.1 - This version may not be safe as it has not been updated for a long time. Find out if your coding project uses this component and get notified of any reported security vulnerabilities with Meterian-X Open Source Security Platform

Licensing

Maintain your licence declarations and avoid unwanted licences to protect your IP the way you intended.

ISC   -   ISC License

Not a wildcard

Not proprietary

OSI Compliant



bloomfilter

Crates.io docs.rs License: ISC

A simple but fast implementation of the Bloom filter in Rust. The Bloom filter is a a space-efficient probabilistic data structure supporting dynamic set membership queries with false positives. It was introduced by Burton H. Bloom in 1970 (Bloom, 1970) and have since been increasingly used in computing applications and bioinformatics.

Documentation

Library documentation is available on docs.rs.

Usage

Add this to your Cargo.toml:

[dependencies]
bloomfilter = "3"

Here is a simple example for creating a bloom filter with a false positive rate of 0.001 and query for presence of some numbers.

use bloomfilter::Bloom;

let num_items = 100000;
let fp_rate = 0.001;

let mut bloom = Bloom::new_for_fp_rate(num_items, fp_rate).unwrap();
bloom.set(&10);   // insert 10 in the bloom filter
bloom.check(&10); // return true
bloom.check(&20); // return false

License

This project is licensed under the ISC license (LICENSE or https://opensource.org/licenses/ISC).