Trait differential_dataflow::operators::count::CountTotal

source ·
pub trait CountTotal<G: Scope, K: ExchangeData, R: Semigroup>{
    // Required method
    fn count_total_core<R2: Semigroup + From<i8>>(
        &self
    ) -> Collection<G, (K, R), R2>;

    // Provided method
    fn count_total(&self) -> Collection<G, (K, R), isize> { ... }
}
Expand description

Extension trait for the count differential dataflow method.

Required Methods§

source

fn count_total_core<R2: Semigroup + From<i8>>( &self ) -> Collection<G, (K, R), R2>

Count for general integer differences.

This method allows count_total to produce collections whose difference type is something other than an isize integer, for example perhaps an i32.

Provided Methods§

source

fn count_total(&self) -> Collection<G, (K, R), isize>

Counts the number of occurrences of each element.

§Examples
use differential_dataflow::input::Input;
use differential_dataflow::operators::CountTotal;

::timely::example(|scope| {
    // report the number of occurrences of each key
    scope.new_collection_from(1 .. 10).1
         .map(|x| x / 3)
         .count_total();
});

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<G, T1> CountTotal<G, <T1 as TraceReader>::KeyOwned, <T1 as TraceReader>::Diff> for Arranged<G, T1>
where G: Scope<Timestamp = T1::Time>, T1: for<'a> TraceReader<Val<'a> = &'a ()> + Clone + 'static, T1::KeyOwned: ExchangeData, T1::Time: TotalOrder, T1::Diff: ExchangeData,

source§

impl<G: Scope, K: ExchangeData + Hashable, R: ExchangeData + Semigroup> CountTotal<G, K, R> for Collection<G, K, R>