Изменения

Перейти к: навигация, поиск

Атрибутные транслирующие грамматики

623 байта добавлено, 10:08, 5 июня 2015
Пример работы с атрибутами в нисходящем разборе
$
В данном примере не требуется дерево разбора в явном виде. В данной реализации рекурсивные функции от нетерминалов получают на вход(если необходимо) наследуемые атрибуты узла и возвращают синтезируемые (результат вычислений соответствующего подвыражения). Как мы видим, $val$ - синтезируемый атрибут, $acc$ - наследуемый атрибут, $ADD$ - транслирующий символ.
E() : '''int'''
E'.val = E'(ADD.res)
'''return''' E'.val
'''break''' '''case''' '\varepsylonvarepsilon':
'''return''' acc
'''default'''
</wikitex>
 
==Атрибуты в ANTLR==
497
правок

Навигация