diff --git a/src/EscapeSequenceParser.ts b/src/EscapeSequenceParser.ts index 7b336d06..c595976f 100644 --- a/src/EscapeSequenceParser.ts +++ b/src/EscapeSequenceParser.ts @@ -200,7 +200,6 @@ class DcsDummy implements IDcsHandler { export class EscapeSequenceParser implements IEscapeSequenceParser { public initialState: number; public currentState: number; - readonly transitions: TransitionTable; // buffers over several parse calls // FIXME: make those protected (needs workaround in tests) @@ -227,10 +226,9 @@ export class EscapeSequenceParser implements IEscapeSequenceParser { protected _dcsHandlerFb: IDcsHandler; protected _errorHandlerFb: (state: IParsingState) => IParsingState; - constructor(transitions: TransitionTable = VT500_TRANSITION_TABLE) { + constructor(readonly transitions: TransitionTable = VT500_TRANSITION_TABLE) { this.initialState = ParserState.GROUND; this.currentState = this.initialState; - this.transitions = transitions; this.osc = ''; this.params = [0]; this.collect = ''; diff --git a/src/InputHandler.ts b/src/InputHandler.ts index 4779435a..3bb61bd7 100644 --- a/src/InputHandler.ts +++ b/src/InputHandler.ts @@ -25,11 +25,12 @@ const GLEVEL = {'(': 0, ')': 1, '*': 2, '+': 3, '-': 1, '.': 2}; * each function's header comment. */ export class InputHandler implements IInputHandler { - private _parser: EscapeSequenceParser; private _surrogateHigh: string; - constructor(private _terminal: any) { - this._parser = new EscapeSequenceParser; // FIXME: maybe as ctor argument + constructor( + private _terminal: any, + private _parser: EscapeSequenceParser = new EscapeSequenceParser) + { this._surrogateHigh = ''; /**