为什么我不能在解析器规则中使用setText函数?
例如:
normalClassDeclaration
: classModifier* 'class' Identifier typeParameters? superclass? superinterfaces? classBody
{
$Identifier.setText("TEST");
}
;
如果我使用此语法生成解析器和词法分析器,则解析器不知道函数setText。 如果我在词法分析器规则中执行此操作,则没有问题,他将每个标识符更改为“TEST”
Identifier
: JavaLetter JavaLetterOrDigit*
{
setText("V");
}
;
但他应该只在标识类/函数/变量标识符时更改标识符。
答案 0 :(得分:0)