Использовать литеральные операторы (например, «и», «или») в выражениях Groovy?
Мой текущий рабочий проект позволяет оценивать предоставляемые пользователем выражения в определенных контекстах, чтобы они могли расширять и влиять на рабочий процесс. Эти выражения обычные логические выражения ф. Чтобы сделать его немного приятным для непрограммистов, яЯ хотел бы дать им возможность использовать литеральные операторы (например, и, или, а не &|,!).
Простой поиск и замены недостаточно, поскольку данные могут содержать эти слова в кавычках, и построение синтаксического анализатора, хотя и выполнимо, может быть не самым элегантным и эффективным решением.
Чтобы прояснить вопрос: есть ли способ в Groovy, чтобы позволить пользователям писать
x > 10 and y = 20 or not z
но пусть Groovy оценит это так:
x > 10 && y == 20 || !z
Спасибо.