keysIn method

Source keys covered by range, without inventing omitted context.

Implementation

Iterable<DiffCommentLineKey> keysIn(DiffReviewRange range) sync* {
  final keys = _keysByFileSide[(range.start.path, range.start.side)];
  if (keys == null) return;
  for (
    var i = _lowerBound(keys, range.start.line);
    i < keys.length && keys[i].line <= range.end.line;
    i++
  ) {
    yield keys[i];
  }
}