toSegments method

  1. @override
Iterable<BufferSegment> toSegments()
override

Convert this range to segments of single lines.

Implementation

@override
Iterable<BufferSegment> toSegments() sync* {
  final self = normalized;
  for (var i = self.begin.y; i <= self.end.y; i++) {
    var startX = i == self.begin.y ? self.begin.x : null;
    var endX = i == self.end.y ? self.end.x : null;
    yield BufferSegment(this, i, startX, endX);
  }
}