From ee4c88fac74fc17a34c13b94fce17aa6aab76d65 Mon Sep 17 00:00:00 2001 From: Robert Einhorn Date: Sun, 4 Feb 2024 13:41:30 +0100 Subject: [PATCH 1/2] added some properties and methods Lexer._modeStack Lexer.mode() Token.source Recognizer.getSymbolicNames() Recognizer.getErrorListenerDispatch() Signed-off-by: Robert Einhorn --- runtime/JavaScript/src/antlr4/Lexer.d.ts | 3 +++ runtime/JavaScript/src/antlr4/Recognizer.d.ts | 2 ++ runtime/JavaScript/src/antlr4/Token.d.ts | 3 +++ 3 files changed, 8 insertions(+) diff --git a/runtime/JavaScript/src/antlr4/Lexer.d.ts b/runtime/JavaScript/src/antlr4/Lexer.d.ts index fe32aa7b4f..72a4738928 100644 --- a/runtime/JavaScript/src/antlr4/Lexer.d.ts +++ b/runtime/JavaScript/src/antlr4/Lexer.d.ts @@ -16,6 +16,8 @@ export declare class Lexer extends Recognizer { _tokenStartLine: number; _tokenStartColumn: number; _type: number; + _modeStack: number[]; + _mode: number; constructor(input: CharStream); reset(): void; @@ -23,6 +25,7 @@ export declare class Lexer extends Recognizer { skip(): void; more(): void; more(m: number): void; + mode(m: number): void; pushMode(m: number): void; popMode(): number; emitToken(token: Token): void; diff --git a/runtime/JavaScript/src/antlr4/Recognizer.d.ts b/runtime/JavaScript/src/antlr4/Recognizer.d.ts index d77927c9a2..ebf52f03df 100644 --- a/runtime/JavaScript/src/antlr4/Recognizer.d.ts +++ b/runtime/JavaScript/src/antlr4/Recognizer.d.ts @@ -6,4 +6,6 @@ export declare class Recognizer { removeErrorListeners(): void; addErrorListener(listener: ErrorListener): void; + getSymbolicNames(): string[]; + getErrorListenerDispatch(): ErrorListener; } diff --git a/runtime/JavaScript/src/antlr4/Token.d.ts b/runtime/JavaScript/src/antlr4/Token.d.ts index 87fb12d1f5..31485ab930 100644 --- a/runtime/JavaScript/src/antlr4/Token.d.ts +++ b/runtime/JavaScript/src/antlr4/Token.d.ts @@ -1,4 +1,6 @@ import {CharStream} from "./CharStream"; +import {TokenSource} from "./TokenSource"; +import {InputStream} from "./InputStream"; export declare class Token { @@ -7,6 +9,7 @@ export declare class Token { static DEFAULT_CHANNEL: number; static HIDDEN_CHANNEL: number; + source: [ TokenSource, InputStream ]; tokenIndex: number; line: number; column: number; From 29a3d4eb933148e6c4cdcf0a0c88e0dc49a2b6a1 Mon Sep 17 00:00:00 2001 From: Robert Einhorn Date: Tue, 5 Mar 2024 06:48:48 +0100 Subject: [PATCH 2/2] added some properties and methods (2) --- runtime/JavaScript/src/antlr4/Lexer.d.ts | 7 +++---- runtime/JavaScript/src/antlr4/Lexer.js | 14 +++++++++++++- runtime/JavaScript/src/antlr4/Recognizer.d.ts | 3 ++- runtime/JavaScript/src/antlr4/Token.d.ts | 9 ++++----- 4 files changed, 22 insertions(+), 11 deletions(-) diff --git a/runtime/JavaScript/src/antlr4/Lexer.d.ts b/runtime/JavaScript/src/antlr4/Lexer.d.ts index 72a4738928..e8de0e1f65 100644 --- a/runtime/JavaScript/src/antlr4/Lexer.d.ts +++ b/runtime/JavaScript/src/antlr4/Lexer.d.ts @@ -16,16 +16,15 @@ export declare class Lexer extends Recognizer { _tokenStartLine: number; _tokenStartColumn: number; _type: number; - _modeStack: number[]; - _mode: number; constructor(input: CharStream); reset(): void; nextToken(): Token; skip(): void; more(): void; - more(m: number): void; - mode(m: number): void; + getModeStack(): number[]; + getMode(): number; + setMode(m: number): void; pushMode(m: number): void; popMode(): number; emitToken(token: Token): void; diff --git a/runtime/JavaScript/src/antlr4/Lexer.js b/runtime/JavaScript/src/antlr4/Lexer.js index 8ff0a89a53..c6a65647fd 100644 --- a/runtime/JavaScript/src/antlr4/Lexer.js +++ b/runtime/JavaScript/src/antlr4/Lexer.js @@ -121,7 +121,7 @@ export default class Lexer extends Recognizer { this.notifyListeners(e); // report error this.recover(e); } else { - console.log(e.stack); + console.log(e.stack); throw e; } } @@ -173,6 +173,18 @@ export default class Lexer extends Recognizer { this._mode = m; } + getMode() { + return this._mode; + } + + setMode(m) { + this._mode = m; + } + + getModeStack() { + return this._modeStack; + } + pushMode(m) { if (this._interp.debug) { console.log("pushMode " + m); diff --git a/runtime/JavaScript/src/antlr4/Recognizer.d.ts b/runtime/JavaScript/src/antlr4/Recognizer.d.ts index ebf52f03df..a01343c121 100644 --- a/runtime/JavaScript/src/antlr4/Recognizer.d.ts +++ b/runtime/JavaScript/src/antlr4/Recognizer.d.ts @@ -6,6 +6,7 @@ export declare class Recognizer { removeErrorListeners(): void; addErrorListener(listener: ErrorListener): void; - getSymbolicNames(): string[]; getErrorListenerDispatch(): ErrorListener; + getLiteralNames(): string[] | []; + getSymbolicNames(): string[] | []; } diff --git a/runtime/JavaScript/src/antlr4/Token.d.ts b/runtime/JavaScript/src/antlr4/Token.d.ts index 31485ab930..7a8e5b70a5 100644 --- a/runtime/JavaScript/src/antlr4/Token.d.ts +++ b/runtime/JavaScript/src/antlr4/Token.d.ts @@ -1,15 +1,13 @@ -import {CharStream} from "./CharStream"; -import {TokenSource} from "./TokenSource"; -import {InputStream} from "./InputStream"; +import { TokenSource } from "./TokenSource"; +import { CharStream } from "./CharStream"; export declare class Token { + static INVALID_TYPE: number; static EOF: number; - static DEFAULT_CHANNEL: number; static HIDDEN_CHANNEL: number; - source: [ TokenSource, InputStream ]; tokenIndex: number; line: number; column: number; @@ -21,5 +19,6 @@ export declare class Token { clone(): Token; cloneWithType(type: number): Token; + getTokenSource(): TokenSource; getInputStream(): CharStream; }