Struct amadeus_streaming::HyperLogLog [−][src]
pub struct HyperLogLog<V: ?Sized> { /* fields omitted */ }
Expand description
An implementation of the HyperLogLog data structure with bias correction.
See HyperLogLog: the analysis of a near-optimal cardinality estimation algorithm and HyperLogLog in Practice: Algorithmic Engineering of a State of The Art Cardinality Estimation Algorithm for background on HyperLogLog with bias correction.
Implementations
impl<V: ?Sized> HyperLogLog<V> where
V: Hash,
[src]
impl<V: ?Sized> HyperLogLog<V> where
V: Hash,
[src]pub fn new(error_rate: f64) -> Self
[src]
pub fn new(error_rate: f64) -> Self
[src]Create an empty HyperLogLog
data structure with the specified error tolerance.
pub fn new_from(hll: &Self) -> Self
[src]
pub fn new_from(hll: &Self) -> Self
[src]Create an empty HyperLogLog
data structure, copying the error tolerance from hll
.
pub fn union(&mut self, src: &Self)
[src]
pub fn union(&mut self, src: &Self)
[src]Merge another HyperLogLog data structure into self
.
This is the same as an HLL approximating cardinality of the union of two multisets.
Trait Implementations
impl<'a, V: ?Sized> AddAssign<&'a HyperLogLog<V>> for HyperLogLog<V> where
V: Hash,
[src]
impl<'a, V: ?Sized> AddAssign<&'a HyperLogLog<V>> for HyperLogLog<V> where
V: Hash,
[src]fn add_assign(&mut self, rhs: &'a Self)
[src]
fn add_assign(&mut self, rhs: &'a Self)
[src]Performs the +=
operation. Read more
impl<'a, V: ?Sized> AddAssign<&'a V> for HyperLogLog<V> where
V: Hash,
[src]
impl<'a, V: ?Sized> AddAssign<&'a V> for HyperLogLog<V> where
V: Hash,
[src]fn add_assign(&mut self, rhs: &'a V)
[src]
fn add_assign(&mut self, rhs: &'a V)
[src]Performs the +=
operation. Read more
impl<V: ?Sized> Clone for HyperLogLog<V>
[src]
impl<V: ?Sized> Clone for HyperLogLog<V>
[src]impl<V: ?Sized> Debug for HyperLogLog<V> where
V: Hash,
[src]
impl<V: ?Sized> Debug for HyperLogLog<V> where
V: Hash,
[src]impl<'de, V: ?Sized> Deserialize<'de> for HyperLogLog<V>
[src]
impl<'de, V: ?Sized> Deserialize<'de> for HyperLogLog<V>
[src]fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]Deserialize this value from the given Serde deserializer. Read more
impl<V: ?Sized> Intersect for HyperLogLog<V> where
V: Hash,
[src]
impl<V: ?Sized> Intersect for HyperLogLog<V> where
V: Hash,
[src]impl<V: ?Sized> IntersectPlusUnionIsPlus for HyperLogLog<V>
[src]
impl<V: ?Sized> IntersectPlusUnionIsPlus for HyperLogLog<V>
[src]impl<V: ?Sized> New for HyperLogLog<V> where
V: Hash,
[src]
impl<V: ?Sized> New for HyperLogLog<V> where
V: Hash,
[src]impl<V: ?Sized> Serialize for HyperLogLog<V>
[src]
impl<V: ?Sized> Serialize for HyperLogLog<V>
[src]impl<'a, V: ?Sized> UnionAssign<&'a HyperLogLog<V>> for HyperLogLog<V> where
V: Hash,
[src]
impl<'a, V: ?Sized> UnionAssign<&'a HyperLogLog<V>> for HyperLogLog<V> where
V: Hash,
[src]fn union_assign(&mut self, rhs: &'a Self)
[src]
fn union_assign(&mut self, rhs: &'a Self)
[src]Union.
Auto Trait Implementations
impl<V: ?Sized> RefUnwindSafe for HyperLogLog<V>
impl<V: ?Sized> Send for HyperLogLog<V>
impl<V: ?Sized> Sync for HyperLogLog<V>
impl<V: ?Sized> Unpin for HyperLogLog<V>
impl<V: ?Sized> UnwindSafe for HyperLogLog<V>
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
pub fn vzip(self) -> V
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,