Skip to content

Latest commit

 

History

History
38 lines (24 loc) · 827 Bytes

README.md

File metadata and controls

38 lines (24 loc) · 827 Bytes

xx-bloomfilter

Hard fork of https://github.com/jedisct1/rust-bloom-filter. Reworked the most of the internals to make tbe algorithm cleaner and more efficient. Uses extremly fast XxHash64 for hashing.

Usage

In your Cargo.toml

[dependencies]
xx-bloomfilter = "0.10.0"

Initialize with expected number of items and a wanted false positive rates

extern crate xx_bloomfilter;
extern crate rand;

use xx_bloomfilter::Bloom;

fn main () {

    let mut bloom = Bloom::new_with_rate(1_000_000, 1e-6);
    let item: u64 = rand::random();

    assert_eq!(false, bloom.check_and_add(&item));
    assert_eq!(true, bloom.check(&item));

    // Clear all values
    bloom.clear();

    assert_eq!(false, bloom.check_and_add(&item));
}