lines property

Iterable<String> get lines

Implementation

Iterable<String> get lines sync* {
  final buffer = StringBuffer();

  for (final chunk in chunks()) {
    for (int i = 0; i < chunk.length; i++) {
      final char = chunk[i];
      if (char == '\n') {
        yield buffer.toString();
        buffer.clear();
      } else {
        buffer.write(char);
      }
    }
  }

  if (buffer.isNotEmpty || _length == 0) {
    yield buffer.toString();
  }
}