operator [] method

  1. @override
DiffRow operator [](
  1. int index
)
override

The object at the given index in the list.

The index must be a valid index of this list, which means that index must be non-negative and less than length.

Implementation

@override
DiffRow operator [](int index) {
  RangeError.checkValidIndex(index, this);
  var low = 0, high = _blocks.length;
  while (low + 1 < high) {
    final mid = (low + high) ~/ 2;
    if (_blocks[mid].start <= index) {
      low = mid;
    } else {
      high = mid;
    }
  }
  final block = _blocks[low];
  return block.row(index - block.start);
}