我想通过在Jison中定义一种非常简单的语言(JavaScript解析器)来解析解析的窍门。它接受与野牛相同/非常类似的语法。 这里是我的语法: %token INT TRUE FALSE WHILE DO IF THEN ELSE LOCATION ASSIGN EOF DEREF
%left "+"
%left ">="
/* Define Start Production */
我已经为布尔和算术表达式做了一个语法。我想处理像算术表达式: (1+5)+(-3)
我与所做的工作:我可以处理所有我想要的表情。 我的问题是一个布尔表达式可以是这样的:那么在某些时候我的布尔规则不得不提到我的算术表达式规则 (((2+2==4) or (3>2)) and 2==2)
。我不能在我的布尔规则中使用括号(),因为它会导致我的语法不明确。我明白为什么,但我无法弄清楚这个问题的解