Rindle docs and package mapSkip to main content

generate_with_overlay

Function generate_with_overlay 

Source
pub fn generate_with_overlay<'g, S: RowStream + 'g>(
    start_at: Option<&OwnedRow>,
    rows: S,
    constraint: Option<&Constraint>,
    overlay: Option<&Overlay>,
    last_pushed_epoch: u32,
    sort: &Sort,
    gate_sort: &Sort,
    reverse: bool,
    predicate: Option<&RowPredicate>,
    multi_constraints: &[MultiConstraint],
) -> RowFlow<'g>
Expand description

Drive a leaf cursor through the epoch-gated, narrowed, ordered overlay splice (generateWithOverlay, memory-source.ts:697). Generic over the leaf S: RowStream — the seam both backends feed. Two comparators, one per job: sort is the index comparator the splice interleaves under (the break-safety dependency, §3.1 — it must match the scan order of rows); gate_sort is the connection comparator the start_at narrowing compares under (it must match the downstream generate_with_start gate — see overlays_for_start_at’s comparator invariant). They coincide except on a constrained scan, where the index sort leads with the constraint columns. start_at, constraint, predicate, multi_constraints narrow the overlay only (the committed rows are filtered later by generate_with_filter).