【发布时间】:2011-12-12 18:30:11
【问题描述】:
我需要计算一个布尔表达式。 目的是过滤一组标记项目。 标记可以是任何名称(比如 Java 标识符)。
例如:
foo OR (bar AND !baz)
这对于标记的项目是正确的:
- foo 费
- 富吧嘘
- 酒吧
我事先不知道需要哪些名字。 我检查了 JEXL,但它有 JexlContext,它基本上是一个需要在评估之前填充的地图。
我需要一些调用回调函数来决定标识符是真还是假的库。或任何其他允许标识符在评估之前未知的机制。
它必须像啤酒一样免费(它用于 Maven 插件),所以 Jep 是不可能的。
我可以使用什么?
【问题讨论】:
标签: java parsing callback boolean-expression expression-evaluation