Some rules are nearly identical with only the token being different. To make defining these rules easier the tokens in the rules should be allowed to have multiple keys similar to Multiple Token Keys.
For example <S> := [Id, Char, Other] <T>;.
This should be handled by creating multiple rules for each combination of token keys.
For example <S> := [A, B] <T> [C, D]; will expand to <S> := [A] <T> [C] | [A] <T> [D] | [B] <T> [C] | [B] <T> [D];.
Some rules are nearly identical with only the token being different. To make defining these rules easier the tokens in the rules should be allowed to have multiple keys similar to Multiple Token Keys.
For example
<S> := [Id, Char, Other] <T>;.This should be handled by creating multiple rules for each combination of token keys.
For example
<S> := [A, B] <T> [C, D];will expand to<S> := [A] <T> [C] | [A] <T> [D] | [B] <T> [C] | [B] <T> [D];.