935
936
while (lineDecorationIndex < lineDecorationsLen && lineDecorations[lineDecorationIndex].startOffset < tokenEndIndex) {
938
>
939
>
if (lineDecoration.startOffset > lastResultEndIndex) {
940
lastResultEndIndex = lineDecoration.startOffset;
941
result[resultLen++] = new LinePart(lastResultEndIndex, tokenType, tokenMetadata, tokenContainsRTL);
942
}
944
>
if (lineDecoration.endOffset + 1 <= tokenEndIndex) {
945
>
// This line decoration ends before this token ends
946
>
lastResultEndIndex = lineDecoration.endOffset + 1;
947
>
result[resultLen++] = new LinePart(lastResultEndIndex, tokenType + ' ' + lineDecoration.className, tokenMetadata | lineDecoration.metadata, tokenContainsRTL);
948
>
lineDecorationIndex++;
949
>
} else {
950
// This line decoration continues on to the next token
951
lastResultEndIndex = tokenEndIndex;