Struct vapcore_bloom_journal::Bloom[][src]

pub struct Bloom { /* fields omitted */ }

Bloom filter structure

Implementations

impl Bloom[src]

pub fn new(bitmap_size: usize, items_count: usize) -> Bloom[src]

Create a new bloom filter structure. bitmap_size is the size in bytes (not bits) that will be allocated in memory items_count is an estimation of the maximum number of items to store.

pub fn from_parts(parts: &[u64], k_num: u32) -> Bloom[src]

Initializes bloom filter from saved state

pub fn new_for_fp_rate(items_count: usize, fp_p: f64) -> Bloom[src]

Create a new bloom filter structure. items_count is an estimation of the maximum number of items to store. fp_p is the wanted rate of false positives, in ]0.0, 1.0[

pub fn compute_bitmap_size(items_count: usize, fp_p: f64) -> usize[src]

Compute a recommended bitmap size for items_count items and a fp_p rate of false positives. fp_p obviously has to be within the ]0.0, 1.0[ range.

pub fn set<T>(&mut self, item: T) where
    T: Hash
[src]

Records the presence of an item.

pub fn check<T>(&self, item: T) -> bool where
    T: Hash
[src]

Check if an item is present in the set. There can be false positives, but no false negatives.

pub fn number_of_bits(&self) -> u64[src]

Return the number of bits in the filter

pub fn number_of_hash_functions(&self) -> u32[src]

Return the number of hash functions used for check and set

pub fn drain_journal(&mut self) -> BloomJournal[src]

Drains the bloom journal returning the updated bloom part

pub fn saturation(&self) -> f64[src]

Returns the ratio of set bits in the bloom filter to the total bits

Auto Trait Implementations

impl RefUnwindSafe for Bloom

impl Send for Bloom

impl Sync for Bloom

impl Unpin for Bloom

impl UnwindSafe for Bloom

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.