Function dataflow::render::reduce::build_collation [−][src]
fn build_collation<G>(
arrangements: Vec<(ReductionType, Arranged<G, TraceAgent<OrdValSpine<Row, Row, <G as ScopeParent>::Timestamp, Diff, usize>>>)>,
aggregate_types: Vec<ReductionType>,
scope: &mut G
) -> Arranged<G, TraceAgent<OrdValSpine<Row, Row, <G as ScopeParent>::Timestamp, Diff, usize>>> where
G: Scope,
G::Timestamp: Lattice,
Expand description
Build the dataflow to combine arrangements containing results of different aggregation types into a single arrangement.
This computes the same thing as a join on the group key followed by shuffling the values into the correct order. This implementation assumes that all input arrangements present values in a way that respects the desired output order, so we can do a linear merge to form the output.