在ANTLR4语法中嵌入访问者/侦听器选项

在ANTLR4语法中嵌入访问者/侦听器选项,antlr4,Antlr4,我想从g4文件启用/禁用访问者/侦听器生成 有没有办法在ANTLR4语法中嵌入访问者/侦听器选项?我在找这样的东西: grammar foo; options { visitor=false; listener=false; } ... 否,不在选项块内 您可以提供生成这些类的工具,以及确保不生成这些类的命令行选项 例如,您为语法T生成类,如下所示: java -cp antlr-4.4-complete.jar org.antlr.v4.Tool T.g4 要确保没有生

我想从g4文件启用/禁用访问者/侦听器生成

有没有办法在ANTLR4语法中嵌入访问者/侦听器选项?我在找这样的东西:

grammar foo;

options {
    visitor=false;
    listener=false;
}

...

否,不在
选项
块内

您可以提供生成这些类的
工具
,以及确保不生成这些类的命令行选项

例如,您为语法
T
生成类,如下所示:

java -cp antlr-4.4-complete.jar org.antlr.v4.Tool T.g4
要确保没有生成侦听器或访问者文件,请执行以下操作:

java -cp antlr-4.4-complete.jar org.antlr.v4.Tool T.g4 -no-listener -no-visitor
以下是ANTLR4的命令行选项:

$java -cp antlr-4.4-complete.jar org.antlr.v4.Tool ANTLR Parser Generator Version 4.4 -o ___ specify output directory where all output is generated -lib ___ specify location of grammars, tokens files -atn generate rule augmented transition network diagrams -encoding ___ specify grammar file encoding; e.g., euc-jp -message-format ___ specify output style for messages in antlr, gnu, vs2005 -long-messages show exception details when available for errors and warnings -listener generate parse tree listener (default) -no-listener don't generate parse tree listener -visitor generate parse tree visitor -no-visitor don't generate parse tree visitor (default) -package ___ specify a package/namespace for the generated code -depend generate file dependencies -D<option>=value set/override a grammar-level option -Werror treat warnings as errors -XdbgST launch StringTemplate visualizer on generated code -XdbgSTWait wait for STViz to close before continuing -Xforce-atn use the ATN simulator for all predictions -Xlog dump lots of logging info to antlr-timestamp.log $java-cp antlr-4.4-complete.jar org.antlr.v4.Tool ANTLR解析器生成器版本4.4 -o __;指定生成所有输出的输出目录 -lib __;指定语法、标记和文件的位置 -atn生成规则扩充的过渡网络图 -编码-指定语法文件编码;e、 g.,euc jp -消息格式-指定antlr、gnu、vs2005中消息的输出样式 -长消息显示错误和警告可用时的异常详细信息 -侦听器生成解析树侦听器(默认) -无侦听器不生成解析树侦听器 -访问者生成解析树访问者 -无访问者不生成解析树访问者(默认) -package\为生成的代码指定一个包/名称空间 -依赖生成文件依赖项 -D=值集/覆盖语法级别选项 -Werror将警告视为错误 -XdbgST在生成的代码上启动StringTemplate可视化工具 -XdbgSTWait等待STViz关闭,然后继续 -Xforce atn使用atn模拟器进行所有预测
-Xlog将大量日志信息转储到antlr-timestamp.LOG,原因是这些类的生成是使用语法的应用程序和/或目标语言的属性,并且完全独立于语法本身。maven、ant和msbuild集成(至少)支持指定这些选项。