【发布时间】:2019-09-18 17:38:20
【问题描述】:
如果我有一个 ANTLR 语法,其中我有这样的规则并带有“returns”语句:
string_decl returns [Pair s] : STR id EQUAL ex=str_literal ';'{$s = new Pair($id.text, $ex.text);} ;
然后在我的主要代码中,我有这样的代码:
Lexer lexer = new Lexer(CharStreams.fromFileName(inputFileName));
CommonTokenStream tokens = new CommonTokenStream(lexer);
Parser parser = new Parser(tokens);
System.out.println(parser.program()); //prints out empty array ?
如何打印出所有“退货”的清单?
【问题讨论】:
-
parser.program()返回的ProgramContext包含所有树结构。使用访问者或听众在树上行走并获取您需要的任何信息。
标签: java compiler-construction antlr