Как написать шаблон посетителя для абстрактного синтаксического дерева в C #?
Я должен написать шаблон посетителя для навигации по AST. Может кто-нибудь сказать мне больше, как бы я начал писать это? Насколько я понимаю, каждый узел в AST будет иметь метод visit () (?), Который каким-то образом вызывается (откуда?). Это о заключении моего понимания. Чтобы упростить все, предположим, что у меня есть узлы Root, Expression, Number, Op и дерево выглядит так:
Root
|
Op(+)
/ \
/ \
Number(5) \
Op(*)
/ \
/ \
/ \
Number(2) Number(444)