{par:} '(' re ')' |
{class:} text '.' '.' text |
{any:} 'Any' |
+ {end:} 'End' |
{text:} text ;
text {-> re} =
rej = 'Rejected' elem_list ';' ;
-prod = id ptrans? '=' alts ';';
+prod = id ptrans? '=' alts priority* ';';
ptrans = '{' '->' id '}';
atrans = '{' '->' '}';
{plus:} elem '+' |
{empty:} 'Empty' ;
+priority =
+ {left:} 'Left' alts |
+ {right:} 'Right' alts |
+ {unary:} 'Unary' alts ;
+
tree_part = 'Tree' prod*;