rustc_mir_transform::coverage::spans

Function divide_spans_into_buckets

Source
fn divide_spans_into_buckets(
    input_covspans: Vec<Covspan>,
    holes: &[Hole],
) -> Vec<Vec<Covspan>>
Expand description

Uses the holes to divide the given covspans into buckets, such that:

  • No span in any hole overlaps a bucket (truncating the spans if necessary).
  • The spans in each bucket are strictly after all spans in previous buckets, and strictly before all spans in subsequent buckets.

The resulting buckets are sorted relative to each other, but might not be internally sorted.