antlr - antlr4中如何以最优化的方式编写语法规则的逻辑运算?
问题描述
antlr4中如何以最优化的方式编写语法规则的逻辑运算?
例如,
方法#1
logicalExpression: expression ('EQUALS' | 'NOT EQUALS' | 'GREATER_THAN' | 'LESS_THAN') value;
对比
方法#2
logicalExpression
: expression 'EQUALS' value
| expression 'NOT EQUALS' value
| expression 'GREATER_THAN' value
| expression 'LESS_THAN' value
哪种方法更有效/性能更好?为什么?我有一种感觉表达式将在方法#2 中匹配多次,而不仅仅是一次。