[antlr-interest] Automatic lists

Ben Corne ben.corne at gmail.com
Tue May 17 06:14:10 PDT 2011


Hi

I'm trying to create a rule looking like this:
==================================
statement
  : ( docs+=documentation )*
  ( def=definition -> ^(AGSTATEMENT $docs $def)
 | tdef=typedefinition -> ^(AGSTATEMENT $docs $tdef)
| imp=imports -> ^(AGSTATEMENT $docs $imp)
   // TODO: (variable EQL) => varassignment
   // TODO: (assignment) => assignment
 | exp=expression -> ^(AGSTATEMENT $exp $docs)
  ;
==================================

This rule should add a bunch of documentation constructs to each type of
statement. Testing with at least one documentation per statement, everything
works as expected.

Now the problem is that when I test statements without any documentation
added to a statement, the ANTLRworks debugger seems to stop after the first
such statement, refusing to go parse the folowing statements.

I suspect that it is because the $docs variable is never initialized since
nothing is added. How should I fix this?

Regards
Ben C.


More information about the antlr-interest mailing list