fn build_halfjoin<'scope, T>(
updates: VecCollection<'scope, T, (Row, T), Diff>,
prev_key: Vec<LirScalarExpr>,
prev_thinning: Vec<usize>,
bundle: &CollectionBundle<'scope, T>,
lookup_key: Vec<LirScalarExpr>,
source_precedes_lookup: bool,
closure: JoinClosure,
config_set: Rc<ConfigSet>,
) -> (VecCollection<'scope, T, (Row, T), Diff>, VecCollection<'scope, T, DataflowErrorSer, Diff>)where
T: RenderTimestamp,Expand description
Constructs a half_join against the arrangement held by a collection bundle.
This wrapper demuxes over the two flavors of arrangement (dataflow-local or imported trace)
that the bundle might hold for lookup_key, dispatching to the generic build_halfjoin_trace
for each. source_precedes_lookup selects the tie-breaking comparison: le if the source
relation precedes the lookup relation in the total order on relations, otherwise lt.