Como escrever padrão de visitante para uma árvore de sintaxe abstrata em c #?
Eu tenho que escrever um padrão de visitante para navegar na AST. Alguém pode me dizer mais como eu iria começar a escrever isso? Tanto quanto eu entendo, cada nó em AST teria o método visit () (?) Que de alguma forma seria chamado (de onde?). Isso conclui meu entendimento. Para simplificar tudo, suponha que eu tenha os nós Raiz, Expressão, Número, Op e a árvore se pareça com isto:
Root
|
Op(+)
/ \
/ \
Number(5) \
Op(*)
/ \
/ \
/ \
Number(2) Number(444)