Существуют ли какие-либо java-библиотеки или методы для разбора булевых выражений по частям?
То, что я имею в виду, дается выражение вроде этого:
T && ( F || ( F && T ) )
Его можно разбить на дерево выражений, чтобы показать, какой токен вызвал значение "F", например (возможно, что-то вроде этого):
T && <- rhs false
( F || <- rhs false
( F && T ) <- eval, false
)
Я пытаюсь передать оценки булевых выражений не-программистам. Я ткнулся с Анлром, но я не мог заставить его делать многое (похоже, у него немного кривая обучения).
Я не против писать сам, но лучше не изобретать велосипед.