-1
私は文法を作成し、IntelliJで適切なJavaScriptターゲットファイルを生成しました。JavaScriptターゲットのリスナーが実行されていません
添付されているエラーリスナーによってエラーが発生するため、解析プロセスが正常に動作しているようです。
しかし、カスタムリスナーを起動して実行できません。私は別のものに言語を変換したいが、リスナーは無視されます:
var chars = new antlr4.InputStream(this.test);
var lexer = new dnpMDLexer.dnpMDLexer(chars);
var tokens = new antlr4.CommonTokenStream(lexer);
var parser = new dnpMDParser.dnpMDParser(tokens);
parser.buildParseTrees = true;
parser.removeErrorListeners();
var errors = [];
var errorListener = new ErrorListener(errors);
parser.addErrorListener(errorListener);
var tree = parser.dnpMD();
var listener = new DnpMDListener();
antlr4.tree.ParseTreeWalker.DEFAULT.walk(listener, tree);
そして、ここでは、リスナーのコードだ(ただ、一部の機能は今の実装):
var dnpMDParserListener = require('./lib/dnpMD/dnpMDParserListener.js').dnpMDParserListener;
var DnpMDListener = function() {
dnpMDParserListener.call(this);
return this;
};
DnpMDListener.prototype = Object.create(dnpMDParserListener.prototype);
DnpMDListener.prototype.constructor = DnpMDListener;
DnpMDListener.prototype.enterDnpMD = function(ctx) {
console.log("dnp: " + ctx);
}
DnpMDListener.prototype.enterHead = function(ctx) {
console.log("Head: " + ctx);
}
DnpMDListener.prototype.enterHeadline = function(ctx) {
console.log("Headline: " + ctx);
}
私は右の何をしないのです今?