How to get token from sub rule context ANTLR 4?
这是我的图像结构 ANTLR 4 解析树 gui:
这是我的监听器规则 enterDeclaration :
1 2 3 4 5 | public void enterDeclaration(ADTCParser.DeclarationContext ctx) { TokenStream tokens = parser.getTokenStream(); String initDeclarationList = tokens.getText(ctx.initDeclarationList()); } |
从 initDeclarationList 中获取令牌,例如 :
1 2 | String initDeclarationList = tokens.getText(ctx.initDeclarationList()); String parameterDeclaration = ??? |
我的问题是"如何从基于上图的结构中的子规则"parameterDeclaration"获取令牌?
顺便说一句,我在 ANTLR 4 中使用语法 C
这是语法链接:https://github.com/antlr/grammars-v4/blob/master/c/C.g4
像这样:
1 2 3 4 5 6 7 8 | ADTCParser.ParameterDeclarationContext context = parser.declaration() .initDeclaratorList() .initDeclarator() .declarator() .directDeclarator() .parameterTypeList() .parameterList() .parameterDeclaration(); |
其中