Skip to main content

extract

Function extract 

Source
pub fn extract<U, I, FShip, FKept>(
    merged: I,
    upper: AntichainRef<'_, U::Time>,
    frontier: &mut Antichain<U::Time>,
    ship: FShip,
    kept: FKept,
)
where U: Update, U::Time: 'static, I: IntoIterator<Item = UpdatesTyped<U>>, FShip: FnMut(UpdatesTyped<U>), FKept: FnMut(UpdatesTyped<U>),
Expand description

Partition merged into chunks ready to ship (times strictly less than upper) and chunks kept for future seals (times at-or-after upper), updating frontier to the antichain of kept times. merged is consumed lazily, and outputs flow through ship / kept sinks so the caller can spill or forward as chunks are produced rather than buffering them.