lrama
lrama copied to clipboard
Widen the definable position of parameterizing rules
We came to this decision after discussion at RubyKaigi 2024. Definitions are also possible in the following positions:
%rule defined_option(X): /* empty */
| X
;
%%
program : defined_option(number) <i>
| defined_list(number) <i>
;
%rule defined_list(X): /* empty */ /* <--- here */
| defined_list(X) number
;