pub fn propose<G, Tr, K, F, P, V>(
prefixes: &Collection<G, P, Tr::Diff>,
arrangement: Arranged<G, Tr>,
key_selector: F,
) -> Collection<G, (P, V), Tr::Diff>where
G: Scope<Timestamp = Tr::Time>,
Tr: TraceReader + Clone + 'static,
for<'a> Tr::Key<'a>: IntoOwned<'a, Owned = K>,
K: Hashable + Default + Ord + 'static,
for<'a> Tr::Diff: Monoid + Multiply<Output = Tr::Diff> + ExchangeData + Semigroup<Tr::DiffGat<'a>>,
F: Fn(&P) -> K + Clone + 'static,
P: ExchangeData,
V: Clone + 'static,
for<'a> Tr::Val<'a>: IntoOwned<'a, Owned = V>,
Expand description
Proposes extensions to a prefix stream.
This method takes a collection prefixes
and an arrangement arrangement
and for each
update in the collection joins with the accumulated arranged records at a time less or
equal to that of the update. Note that this is not a join by itself, but can be used to
create a join if the prefixes
collection is also arranged and responds to changes that
arrangement
undergoes. More complicated patterns are also appropriate, as in the case
of delta queries.