antlr4-默认上下文对象



是否可以生成默认上下文对象?

给出以下简化语法

class {
    method* constructor? 
}

和解析文本:

SomeClass {
}

是否可以让antlr将输入文本解释为存在构造函数?

SomeClass {
   SomeClass() {
   }
}

我可以在类上下文监听器中做一些技巧来添加构造函数,但这看起来很混乱。如果上下文对象不是在尽可能低的级别提供的,我想知道是否有任何方法可以生成默认的"文本"。

学习Antlr的基本知识。有一个由ANTLR侦听器生成的名为(语法名称)BaseListener的侦听器,方法为enter(rulename)或exit(rulename)。我想当调用这些方法时,这是不可取的。您可以覆盖方法以执行任何您想要的操作,例如,如果将存在构造函数规则,则调用构造函数。然后将此侦听器添加到parcer中。

相关内容

  • 没有找到相关文章

最新更新