Skip to main content

reduce_with_tactic

Function reduce_with_tactic 

Source
pub fn reduce_with_tactic<'scope, Tr1, Tr2, T>(
    trace: Arranged<'scope, Tr1>,
    name: &str,
    tactic: T,
) -> Arranged<'scope, TraceAgent<Tr2>>
where Tr1: TraceReader + 'static, Tr2: Trace<Time = Tr1::Time> + 'static, T: ReduceTactic<Tr1::Batch, Tr2::Batch> + 'static,
Expand description

Drives a key-wise reduction using a supplied ReduceTactic.

This is the general reduce operator: it does the dataflow plumbing (frontiers, capabilities, output trace maintenance) and routes the per-interval work through the tactic. It requires only TraceReader of its input and Trace of its output, never Navigable: it extracts batches via batches_through, and building cursors over them (if that is how the reduce proceeds) is the tactic’s concern.