Outras funcionalidades
Mais sobre acções
Já vimos que é possível acrescentar directamente na gramática acções (expressas na linguagem destino) que são executadas durante a fase de análise sintáctica (na ordem expressa na gramática).
Podemos também associar a cada regra dois blocos especiais de código – @init e @after – cuja execução, respectivamente, precede ou sucede ao reconhecimento da regra.
O bloco @init pode ser útil, por exemplo, para inicializar variáveis.
O bloco @after é uma alternativa a colocar a acção no fim da regra.
Last updated