[antlr-interest] rewrite rule translation to tree grammar
Johannes Luber
jaluber at gmx.de
Fri Dec 14 13:34:09 PST 2007
Terence Parr schrieb:
> First, allow me to suggest:
>
> expr : INT ('+'^ INT)* ;
>
> To match either in tree grammar:
>
> expr : ^('+' expr expr)
> | INT
> ;
So my rule should be:
qualified_identifier
: (i1=IDENTIFIER -> ^(QUALIFIED_IDENTIFIER $i1))
(DOT i2=IDENTIFIER -> ^(ROOT $qualified_identifier DOT $i2))*
;
And the tree grammar equivalent:
qualified_identifier
: ^(ROOT qualified_identifier DOT i2=IDENTIFIER)
| ^(QUALIFIED_IDENTIFIER IDENTIFIER)
;
Am I right?
Johannes
More information about the antlr-interest
mailing list