Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ANTLR4不支持ASTLabelType吗?_Antlr4 - Fatal编程技术网

ANTLR4不支持ASTLabelType吗?

ANTLR4不支持ASTLabelType吗?,antlr4,Antlr4,我正在使用ANTLR4构建AST树,我从以下位置下载g4文件: 在g4文件的头部添加选项: options{ output=AST; ASTLabelType=CommonTree; language=Java; } 但在编译g4文件时,它输出: ANTLR Tool v4.6 (D:\antlr-4.6-complete.jar) SQLite.g4 -o C:\Users\macro\workspace\tdsql\target\generated-

我正在使用ANTLR4构建AST树,我从以下位置下载g4文件: 在g4文件的头部添加选项:

options{  
    output=AST;  
    ASTLabelType=CommonTree;  
    language=Java;  
}
但在编译g4文件时,它输出:

ANTLR Tool v4.6 (D:\antlr-4.6-complete.jar)
SQLite.g4 -o C:\Users\macro\workspace\tdsql\target\generated-sources\antlr4 -listener -no-visitor -encoding UTF-8
warning(83): SQLite.g4:34:4: unsupported option output
warning(83): SQLite.g4:35:4: unsupported option ASTLabelType

antlr4不支持使用ASTLabelType构建AST树吗?如何使用antlr4构建AST树

我自己也是Antlr的新手,所以有更好的人才可以回答这个问题。也就是说,AST输出选项在Antlr3和Antlr4之间被弃用。Antlr3将生成AST,但Antlr4不会

在Antlr4中,您可以选择使用侦听器模式(遍历解析树)或访问者模式(访问和评估节点)。在运行Lexer和解析器之后,可以使用其中的一个或两个

通过一些搜索可以找到许多示例。这里有一个是给你的。这一页