ranges method

List<StyledRange> ranges(
  1. SyntaxTheme theme
)

Every token of the document as a StyledRange under theme.

Implementation

List<StyledRange> ranges(SyntaxTheme theme) {
  final ranges = <StyledRange>[];
  var offset = 0;
  for (final line in _lines) {
    for (final token in line.themed(theme)) {
      if (token.text.isEmpty) continue;
      final start = offset + token.offset;
      ranges.add(StyledRange(start, start + token.text.length, token.style));
    }
    offset += line.raw.length + 1;
  }
  return ranges;
}