0
我想描述一個可嵌套的條件。以下是我的工作:在遞歸規則中忽略由{}匹配的空元素
expr = (/[_a-zA-Z][a-zA-Z0-9_-]*/) ;
condop = ("AND" | "OR") ;
condition = expr { condop condition } ;
start = condition ;
我可以生成與行的AST喜歡:
foo AND bar
這裏的AST:
[
"foo",
[
[
"AND",
[
"bar",
[]
]
]
]
]
但有一個空表後「bar」,因爲我猜上一次條件規則匹配時,「condop條件」值得一個空字符串。根據文檔https://pypi.python.org/pypi/grako/3.16.0,{}生成一個空列表。
有沒有辦法來防止這種情況發生?