318
}
319
}
321
>
if (canReduceOperations) {
322
>
operations = this._reduceOperations(operations);
323
>
}
324
>
325
>
// Delta encode operations
326
const reverseRanges = (computeUndoEdits || recordTrimAutoWhitespace ? PieceTreeTextBuffer._getInverseEditRanges(operations) : []);
327
const newTrimAutoWhitespaceCandidates: { lineNumber: number; oldContent: string }[] = [];
328
if (recordTrimAutoWhitespace) {
330
>
const op = operations[i];
331
>
const reverseRange = reverseRanges[i];
332
>
333
>
if (op.isAutoWhitespaceEdit && op.range.isEmpty()) {
334
// Record already the future line numbers that might be auto whitespace removal candidates on next edit
335
for (let lineNumber = reverseRange.startLineNumber; lineNumber <= reverseRange.endLineNumber; lineNumber++) {