Операторы if / else в ANTLR с использованием слушателей

Я создаю простой язык программирования для школьного проекта. Я использую ANTLR 4 для генерации лексера и парсера из моей грамматики. До сих пор я использовал шаблон слушателя ANTLR для применения фактической функциональности языка программирования.

Теперь я хотел бы реализовать операторы if / else, но я не уверен, что они действительно могут быть реализованы при использовании шаблона слушателя, поскольку ANTLR решает, в каком порядке обходить дерево разбора при использовании слушателей, и я представляю, что реализация if / Операторы else потребуют перехода по дереву разбора в зависимости от того, какое условие в выражении выполнено.

Может кто-нибудь сказать мне, будет ли возможно реализовать операторы if / else с использованием ANTLR или мне придется самому реализовывать шаблон посетителя? Кроме того, кто-нибудь может привести предельно простой пример реализации заявлений?

Ответы на вопрос(1)

Ваш ответ на вопрос