[antlr-interest] How to get number of children in a tree?
Tim Clark
timgclark at gmail.com
Wed Jun 13 09:30:39 PDT 2007
Hi all
In my parser (output=AST) I have two rules like this:
exprList : expr (COMMA! expr)* | // Empty ;
funcCall : ID LPAREN exprList RPAREN -> ^(FUNC_CALL ID exprList) ;
So a sentence fragment like "foobar()" produces ^(FUNC_CALL foo)
and one like "foobar(1,2,3)" produces ^(FUNC_CALL foo 1 2 3)
In a later pass, a tree grammar has this:
funcCall: ^(FUNC_CALL ID expr*
{
within this action, how can I get hold of the number of expressions?
or, indeed, iterate over the expressions themselves (say in reverse
order)?
}
);
I hope that's clear enough for someone to help :)
Regards, Tim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.antlr.org/pipermail/antlr-interest/attachments/20070613/c5926f43/attachment.html
More information about the antlr-interest
mailing list