pub trait ArrangeBySelf<G: Scope, K: Data + Hashable, R: Ord + Semigroup + 'static>
where G::Timestamp: Lattice + Ord,
{ // Required methods fn arrange_by_self( &self, ) -> Arranged<G, TraceAgent<KeySpine<K, G::Timestamp, R>>>; fn arrange_by_self_named( &self, name: &str, ) -> Arranged<G, TraceAgent<KeySpine<K, G::Timestamp, R>>>; }
Expand description

Arranges something as (Key, ()) pairs according to a type T of trace.

This arrangement requires Key: Hashable, and uses the hashed() method to place keys in a hashed map. This can result in many hash calls, and in some cases it may help to first transform K to the pair (u64, K) of hash value and key.

Required Methods§

source

fn arrange_by_self( &self, ) -> Arranged<G, TraceAgent<KeySpine<K, G::Timestamp, R>>>

Arranges a collection of Key records by Key.

This operator arranges a collection of records into a shared trace, whose contents it maintains. This trace is current for all times complete in the output stream, which can be used to safely identify the stable times and values in the trace.

source

fn arrange_by_self_named( &self, name: &str, ) -> Arranged<G, TraceAgent<KeySpine<K, G::Timestamp, R>>>

As arrange_by_self but with the ability to name the arrangement.

Implementors§

source§

impl<G: Scope, K: ExchangeData + Hashable, R: ExchangeData + Semigroup> ArrangeBySelf<G, K, R> for Collection<G, K, R>
where G::Timestamp: Lattice + Ord,