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
impl<G, K, V, L> GroupArranged<G, K, V> for Arranged<G, BasicTrace<K, G::Timestamp, V, L>> where G: Scope, K: Data, V: Data, L: Lookup<K, Offset> + 'static, G::Timestamp: LeastUpperBound