pub fn resolve_streaming(
pack: &[u8],
w: &PackWalk,
hash: GitHashKind,
archive_offset: u64,
bases: &dyn BaseSource,
sink: &dyn PayloadSink,
limits: ResolveLimits<'_>,
rows: &mut (dyn FnMut(&mut Vec<Resolved>) -> Result<()> + Send),
) -> Result<ResolveReport>Expand description
The resolver: bounded bases, watchdog checkpoints, rows in batches.
rows is called with each full batch (and the final partial one) and may
drain the vector; the same allocation is reused for the next batch. Nothing
about the rows or the sink calls depends on the batch size — it is purely
how much the caller holds at once.