ANTLR4:添加替代标签后,我可以标记原始规则吗?

时间:2017-11-02 16:14:26

标签: antlr antlr4

我添加了一些替代标签,如下所示。现在为enterSomeTypeenterSomeOtherType生成解析器方法。但是如何获得原始类型,即:enterType

type
  : IDENTIFIER     # someType
  | typeDescriptor # someOtherType
  ;

1 个答案:

答案 0 :(得分:0)

我不确定这是否能回答您的问题(语言?时间?)。

在Python中,当我遍历树时(因此称为“子级”): rule=str(parser.ruleNames[child.getPayload().getRuleIndex()])给出规则的名称(例如'type') lbl=child.__class__.__name__[:-7]给出替代标签(例如'SomeOtherType')