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
ルートツリーの正しいテキストのみを取得しますが、サブツリーのテキストは取得しません。私は何をすべきか?どうもありがとうございました!