【发布时间】:2018-04-17 16:04:24
【问题描述】:
我在这里找到了this question,其中 OP 要求提供一种分析 ANTLTR 语法的方法。
然而,答案有点令人不满意,因为它仅限于没有动作的语法,而且 - 更重要的是 - 它是一个自动分析,它将(如我所见)使用生成的词法分析器/解析器的默认构造函数来构造它。
我需要分析一个语法,该语法确实包含动作并且必须使用自定义构造函数来构造。因此,我需要能够自己实例化词法分析器 + 解析器,然后对其进行分析。
我无法找到有关此主题的任何信息。我知道 IntelliJ 有一个分析器,但它的工作原理与链接问题的答案中描述的分析器非常相似(也许它甚至是相同的)。
有谁知道我如何根据这种特殊需求来分析我的语法?我不需要任何花哨的 GUI。如果我将结果打印到控制台或类似的东西上,我会很满意。
总结一下:我正在寻找有关如何编写一些代码来分析我的 ANTLR 语法(使用自实例化词法分析器/解析器)的工具或提示。
顺便说一句,我的目标语言是 Java,所以我猜探查器也必须使用 Java。
【问题讨论】:
-
这个问题相当广泛,因此在这里很难回答。您可以先将
Parser.setProfile()设置为 true,然后在解析运行后检查您从Parser.getParseInfo()获得的内容。 -
好吧,我会试试的……我什至不知道这个选项存在
-
好的,这似乎涵盖了我正在寻找的所有信息。如果您写的答案包含您的评论内容(以及如何将 decisionInfo 与相应规则的名称相关联),我会接受它作为我问题的正确答案。