【问题标题】:Antlr4 supports cross linking in a grammar?Antlr4 支持语法中的交叉链接?
【发布时间】:2015-01-27 12:17:16
【问题描述】:

我正在尝试使用 Antlr4 为状态转换语言编写语法

这个系统有变量(例如,状态),声明一次,可以在别处引用。

我的问题是:Antlr4 是否支持 XText 中的交叉引用

如果 Antlr4 不提供此功能,我想一种“简单”的方法是使用内存 Map 来解析令牌并将信息存储在此 Map 中?

【问题讨论】:

    标签: parsing antlr antlr4


    【解决方案1】:

    简短的回答是否定的,XText 中的交叉引用可以实现一定程度的复杂性,这在基于 EMF 的系统之外很难复制。

    但是,在最简单的形式中,交叉引用只需要一个静态符号表。根据您的需要,基于状态遍历的​​symbol versioning 可能就足够了。版本控制通常在树遍历期间执行。静态符号的初始化可以在基于语法的操作中执行,但最好在解析器而不是词法分析器中完成。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-09
      • 2020-11-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多