Trait datafrog::Leaper[][src]

pub trait Leaper<'leap, Tuple, Val> {
    fn count(&mut self, prefix: &Tuple) -> usize;
fn propose(&mut self, prefix: &Tuple, values: &mut Vec<&'leap Val>);
fn intersect(&mut self, prefix: &Tuple, values: &mut Vec<&'leap Val>); }

Methods to support treefrog leapjoin.

Required methods

fn count(&mut self, prefix: &Tuple) -> usize[src]

Estimates the number of proposed values.

fn propose(&mut self, prefix: &Tuple, values: &mut Vec<&'leap Val>)[src]

Populates values with proposed values.

fn intersect(&mut self, prefix: &Tuple, values: &mut Vec<&'leap Val>)[src]

Restricts values to proposed values.

Loading content...

Implementors

impl<'leap, Key, Val, Tuple, Func> Leaper<'leap, Tuple, Val> for ExtendWith<'leap, Key, Val, Tuple, Func> where
    Key: Ord + 'leap,
    Val: Ord + 'leap,
    Tuple: Ord,
    Func: Fn(&Tuple) -> Key, 
[src]

impl<'leap, Key, Val, Val2, Tuple, Func> Leaper<'leap, Tuple, Val2> for FilterWith<'leap, Key, Val, Tuple, Func> where
    Key: Ord + 'leap,
    Val: Ord + 'leap,
    Tuple: Ord,
    Func: Fn(&Tuple) -> (Key, Val)
[src]

impl<'leap, Key: Ord, Val: Ord + 'leap, Tuple: Ord, Func> Leaper<'leap, Tuple, Val> for ExtendAnti<'leap, Key, Val, Tuple, Func> where
    Key: Ord + 'leap,
    Val: Ord + 'leap,
    Tuple: Ord,
    Func: Fn(&Tuple) -> Key, 
[src]

impl<'leap, Key: Ord, Val: Ord + 'leap, Val2, Tuple: Ord, Func> Leaper<'leap, Tuple, Val2> for FilterAnti<'leap, Key, Val, Tuple, Func> where
    Key: Ord + 'leap,
    Val: Ord + 'leap,
    Tuple: Ord,
    Func: Fn(&Tuple) -> (Key, Val)
[src]

impl<'leap, Tuple, Val, Func> Leaper<'leap, Tuple, Val> for PrefixFilter<Tuple, Func> where
    Func: Fn(&Tuple) -> bool
[src]

fn count(&mut self, prefix: &Tuple) -> usize[src]

Estimates the number of proposed values.

fn propose(&mut self, _prefix: &Tuple, _values: &mut Vec<&'leap Val>)[src]

Populates values with proposed values.

fn intersect(&mut self, _prefix: &Tuple, _values: &mut Vec<&'leap Val>)[src]

Restricts values to proposed values.

impl<'leap, Tuple, Val, Func> Leaper<'leap, Tuple, Val> for ValueFilter<Tuple, Val, Func> where
    Func: Fn(&Tuple, &Val) -> bool
[src]

fn count(&mut self, _prefix: &Tuple) -> usize[src]

Estimates the number of proposed values.

fn propose(&mut self, _prefix: &Tuple, _values: &mut Vec<&'leap Val>)[src]

Populates values with proposed values.

fn intersect(&mut self, prefix: &Tuple, values: &mut Vec<&'leap Val>)[src]

Restricts values to proposed values.

Loading content...