Skip to content

Commit f606569

Browse files
committed
Changeset: Use clear() to initialize
This avoids some duplicate code and it helps ensure that `clear()` works properly.
1 parent 811e00a commit f606569

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

src/static/js/Changeset.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -323,18 +323,18 @@ class OpAssembler {
323323
class MergingOpAssembler {
324324
constructor() {
325325
this._assem = new OpAssembler();
326+
this.clear();
327+
}
328+
329+
clear() {
330+
this._assem.clear();
326331
this._bufOp = new Op();
327332
// If we get, for example, insertions [xxx\n,yyy], those don't merge, but if we get
328333
// [xxx\n,yyy,zzz\n], that merges to [xxx\nyyyzzz\n]. This variable stores the length of yyy and
329334
// any other newline-less ops immediately after it.
330335
this._bufOpAdditionalCharsAfterNewline = 0;
331336
}
332337

333-
clear() {
334-
this._assem.clear();
335-
clearOp(this._bufOp);
336-
}
337-
338338
_flush(isEndDocument) {
339339
if (!this._bufOp.opcode) return;
340340
if (isEndDocument && this._bufOp.opcode === '=' && !this._bufOp.attribs) {
@@ -431,15 +431,15 @@ class SmartOpAssembler {
431431
this._plusAssem = new MergingOpAssembler();
432432
this._keepAssem = new MergingOpAssembler();
433433
this._assem = exports.stringAssembler();
434-
this._lastOpcode = '';
435-
this._lengthChange = 0;
434+
this.clear();
436435
}
437436

438437
clear() {
439438
this._minusAssem.clear();
440439
this._plusAssem.clear();
441440
this._keepAssem.clear();
442441
this._assem.clear();
442+
this._lastOpcode = '';
443443
this._lengthChange = 0;
444444
}
445445

0 commit comments

Comments
 (0)