Function differential_dataflow::operators::reduce::reduce_trace
source ยท pub fn reduce_trace<G, T1, T2, K, V, L>(
trace: &Arranged<G, T1>,
name: &str,
logic: L,
) -> Arranged<G, TraceAgent<T2>>where
G: Scope<Timestamp = T1::Time>,
T1: TraceReader + Clone + 'static,
for<'a> T1::Key<'a>: IntoOwned<'a, Owned = K>,
T2: for<'a> Trace<Key<'a> = T1::Key<'a>, Time = T1::Time> + 'static,
K: Ord + 'static,
V: Data,
for<'a> T2::Val<'a>: IntoOwned<'a, Owned = V>,
T2::Batch: Batch,
<T2::Builder as Builder>::Input: Container + PushInto<((K, V), T2::Time, T2::Diff)>,
L: FnMut(T1::Key<'_>, &[(T1::Val<'_>, T1::Diff)], &mut Vec<(V, T2::Diff)>, &mut Vec<(V, T2::Diff)>) + 'static,
Expand description
A key-wise reduction of values in an input trace.
This method exists to provide reduce functionality without opinions about qualifying trace types.