If / else instruções em ANTLR usando ouvintes

Estou criando uma linguagem de programação simples para um projeto escolar. Estou usando o ANTLR 4 para gerar um lexer e um analisador da minha gramática. Até agora, tenho usado o padrão ouvinte ANTLRs para aplicar a funcionalidade real da linguagem de programação.

Agora eu gostaria de implementar as declarações if / else, mas não tenho certeza se elas podem realmente ser implementadas ao usar o padrão ouvinte, conforme ANTLR decide em qual ordem percorrer a árvore de análise ao usar ouvintes e imagino que a implementação de if / Senão, as instruções exigirão que você salte pela árvore de análise, dependendo de qual condição da instrução está satisfeita.

Alguém pode me dizer se será possível implementar instruções if / else usando ANTLR ou se eu vou ter que implementar o padrão de visitante eu mesmo? Além disso, alguém pode dar um exemplo extremamente simples da implementação das declarações?

questionAnswers(1)

yourAnswerToTheQuestion