0

我正在为类似于 java 但更简单的语言实现解析器。我写了一个词法分析器,现在正在写解析器。我已经写了语法,我需要实现元素的计数,但我不知道要放它。我认为它应该在制作后出现在动作代码中,但我不知道要初始化它。

例如

MethodDecl ::= ReturnType:type IDENTIFIER:id LPAREN FormParsOp:pars RPAREN VarDeclListOp LBRACE StatementListOp RBRACE
       {: System.out.println("Method: " + type + " " + id + "(" + pars + ")");   methodNumber++;:} 
    | STATIC ReturnType:type IDENTIFIER:id LPAREN FormParsOp:pars RPAREN VarDeclListOp LBRACE StatementListOp RBRACE
       {: System.out.println("Static method: " + type + " " + id + "(" + pars + ")");  staticMethodNumber++;:} ;

我应该在哪里定义和初始化变量 methodNumber 和 staticMethodNumber?

4

1 回答 1

1

解决了...我把它们放在动作代码中并在那里初始化

于 2012-06-16T22:05:21.970 回答