问题通常是由于使用不同版本的ANTLR导致的。为解决此问题,请在以下命令中指定正确的版本:
npm install antlr4ts@ --save-dev
其中,
应替换为您所需的版本号。如果您正在使用TypeScript,则需要为ANTLR生成代码。例如,解析一些JavaScript代码:
const antlr4ts = require("antlr4ts");
const JavaScriptLexer = require("path-to-lexer");
// ...
// create a CharStreams from a file
const stream = antlr4ts.CharStreams.fromPath("./yourfile.js");
// create a lexer from the stream
const lexer = new JavaScriptLexer.JavaScriptLexer(stream);
// get the token stream from the lexer
const tokens = new antlr4ts.CommonTokenStream(lexer);
// ...
解析后,您将能够访问 getHiddenTokensToLeft
和 getHiddenTokensToRight
方法,并且不会有与原型不匹配的错误。