anltr 3.4 树语法属性$text问题
parser grammar:
additiveExpression
: multiplicativeExpression
(
( '+'^
| '-'^
)
multiplicativeExpression
)*
;
tree grammar:
expression
@init
{
$start.setOriginalText($text);//try to record source code
}
: ^('+' e1=expression e2=expression)
{
//do something
}
| ^('-' e1=expression e2=expression)
{
//do something
}
;
例子:
1+1+1+1;
AST:
+ $text=1+1+1+1 correct
+ 1 $text=+ wrong
+ 1 $text=+ wrong
1 1
我只得到根树的正确文本,但没有得到子树的任何文本。我该怎么办?非常感谢你!