fn build_basic_aggregates<G>(
    debug_name: &str,
    input: Collection<G, (Row, Row), Diff>,
    aggrs: Vec<(usize, AggregateExpr)>
) -> (Arranged<G, TraceAgent<ColValSpine<Row, Row, <G as ScopeParent>::Timestamp, Diff, usize>>>, Collection<G, DataflowError, Diff>)where
    G: Scope,
    G::Timestamp: Lattice,
Expand description

Build the dataflow to compute and arrange multiple non-accumulable, non-hierarchical aggregations on input.

This function assumes that we are explicitly rendering multiple basic aggregations. For each aggregate, we render a different reduce operator, and then fuse results together into a final arrangement that presents all the results in the order specified by aggrs.