Trait differential_dataflow::operators::group::GroupArranged [] [src]

pub trait GroupArranged<G: Scope, K: Data, V: Data> {
    fn group<V2, U, KH, Look, LookG, Logic>(&self, key_h: KH, look: LookG, logic: Logic) -> Arranged<G, BasicTrace<K, G::Timestamp, V2, Look>> where G::Timestamp: LeastUpperBound, V2: Data, U: Unsigned + Default, KH: Fn(&K) -> U + 'static, Look: Lookup<K, Offset> + 'static, LookG: Fn(u64) -> Look, Logic: Fn(&K, &mut CollectionIterator<DifferenceIterator<V>>, &mut Vec<(V2, i32)>) + 'static;
}

Extension trait for the group operator on Arrange<_> data.

Required Methods

fn group<V2, U, KH, Look, LookG, Logic>(&self, key_h: KH, look: LookG, logic: Logic) -> Arranged<G, BasicTrace<K, G::Timestamp, V2, Look>> where G::Timestamp: LeastUpperBound, V2: Data, U: Unsigned + Default, KH: Fn(&K) -> U + 'static, Look: Lookup<K, Offset> + 'static, LookG: Fn(u64) -> Look, Logic: Fn(&K, &mut CollectionIterator<DifferenceIterator<V>>, &mut Vec<(V2, i32)>) + 'static

Groups arranged data using a key hash function, a lookup generator, and user logic.

This method is used by group and group_u as defined on Collection, and it can also be called directly by user code that wants access to the arranged output. This can be helpful when the resulting data are re-used immediately with the same keys.

Implementors