diff --git a/poppy/src/bloom/v1.rs b/poppy/src/bloom/v1.rs index c9ca2bc..cbd7ecb 100644 --- a/poppy/src/bloom/v1.rs +++ b/poppy/src/bloom/v1.rs @@ -1,7 +1,6 @@ use std::{ hash::Hasher, io::{self, BufWriter, Read, Write}, - slice, }; use crate::{ @@ -221,13 +220,6 @@ impl BloomFilter { .collect::>() } - #[inline(always)] - pub fn insert(&mut self, value: S) -> Result { - self.insert_bytes(unsafe { - slice::from_raw_parts(&value as *const S as *const u8, core::mem::size_of::()) - }) - } - /// inserts a value into the bloom filter, as bloom filters are not easily /// growable an error is returned if we try to insert too many entries #[inline(always)] @@ -294,13 +286,6 @@ impl BloomFilter { ret } - #[inline(always)] - pub fn contains(&self, value: S) -> bool { - self.contains_bytes(unsafe { - slice::from_raw_parts(&value as *const S as *const u8, core::mem::size_of::()) - }) - } - /// counts all the set bits in the bloom filter #[inline(always)] pub fn count_ones(&self) -> usize { @@ -544,13 +529,13 @@ mod test { assert!(b.bit_size.is_power_of_two()); for i in 0..n { - b.insert(i).unwrap(); - assert!(b.contains(i)); + b.insert_bytes(i.to_le_bytes()).unwrap(); + assert!(b.contains_bytes(i.to_le_bytes())); } let mut s = Stats::new(); for i in n..n * 2 { - if b.contains(i) { + if b.contains_bytes(i.to_le_bytes()) { s.inc_fp() } else { s.inc_tn() @@ -564,7 +549,7 @@ mod test { #[test] fn test_contains_on_empty() { let b = bloom!(0, 0.001); - assert!(!b.contains(42)) + assert!(!b.contains_bytes("42")) } #[test] diff --git a/poppy/src/bloom/v2.rs b/poppy/src/bloom/v2.rs index 5ccf991..ee44052 100644 --- a/poppy/src/bloom/v2.rs +++ b/poppy/src/bloom/v2.rs @@ -2,7 +2,6 @@ use std::{ hash::Hasher, io::{self, BufWriter, Read, Write}, marker::PhantomData, - slice, }; use crate::{ @@ -331,13 +330,6 @@ impl BloomFilter { Ok(new) } - #[inline(always)] - pub fn insert(&mut self, value: S) -> Result { - self.insert_bytes(unsafe { - slice::from_raw_parts(&value as *const S as *const u8, core::mem::size_of::()) - }) - } - #[inline] pub fn contains_bytes>(&self, data: D) -> bool { if self.capacity == 0 { @@ -378,13 +370,6 @@ impl BloomFilter { true } - #[inline(always)] - pub fn contains(&self, value: S) -> bool { - self.contains_bytes(unsafe { - slice::from_raw_parts(&value as *const S as *const u8, core::mem::size_of::()) - }) - } - /// counts all the set bits in the bloom filter #[inline] pub fn count_ones(&self) -> usize { @@ -852,7 +837,7 @@ mod test { #[test] fn test_contains_on_empty() { let b = bloom!(0, 0.001); - assert!(!b.contains(42)) + assert!(!b.contains_bytes("toto")) } #[test]