我正在开发 LiveScript 语言的解析器,并且无法同时解析这两种对象属性定义key: value
表单(+|-)key
。例如:
prop: "val"
+boolProp
-boolProp
prop2: val2
我有这个key: value
表格:
Expression ::= TestExpression
| ParenExpression
| OpExpression
| ObjDefExpression
| PropDefExpression
| LiteralExpression
| ReferenceExpression
PropDefExpression ::= Expression COLON Expression
ObjDefExpression ::= PropDefExpression (NEWLINE PropDefExpression)*
// ... other expressions
但是,无论我尝试添加("+"|"-") IDENTIFIER
or PropDefExpression
,ObjDefExpression
我都会收到有关使用左递归的错误。这样做的(正确)方法是什么?