antlr3ide似乎产生解析器和词法文件,而不包信息,其中的java文件的位置(如包tour.trees;,这里的相对路径文件夹旅游/棵包含相应的文件ExprParser.java
和ExprLexer.java
)。antlr3ide生成没有包信息的解析器和词法分析器?
的official forum似乎有点不活跃和documentation给了我帮助不大:(
下面是一个示例语法文件Expr.g
:
grammar Expr;
options {
language = Java;
}
prog : stat+;
stat : expr NEWLINE
| ID '=' expr NEWLINE
| NEWLINE
;
expr: multiExpr (('+'|'-') multiExpr)*
;
multiExpr : atom('*' atom)*
;
atom : INT
| ID
| '(' expr ')'
;
ID : ('a'..'z'|'A'..'Z')+ ;
INT : '0'..'9'+;
NEWLINE : '\r'?'\n';
WS : (' '|'\t'|'\n'|'\r')+{skip();};
@BartKiers我没有为语法文件添加额外的**选项**块吗?我需要吗? –
@BartKiers感谢您的建议:)我现在添加了一个示例代码。 –