Yacc / Bison, минимизируйте количество, группируя математические операции
Я смотрю на источник Calc здесьhttp://epaperpress.com/lexandyacc/
Я вижу тезисы в calc.y
| expr '+' expr { $$ = opr('+', 2, $1, $3); }
| expr '-' expr { $$ = opr('-', 2, $1, $3); }
| expr '*' expr { $$ = opr('*', 2, $1, $3); }
| expr '/' expr { $$ = opr('/', 2, $1, $3); }
| expr '', 2, $1, $3); }
Есть ли способ сгруппировать их? так что я могу написать что-то вроде ниже?
| expr mathOp expr { $$ = opr(mathOp, 2, $1, $3); }
| expr cmpOp expr { $$ = opr(cmpOp, 2, $1, $3); }
ПРИМЕЧАНИЕ: я использую бизона.