Мне нужно обработать АСТ языка, и посетитель на дереве просто решает это хорошо. однако некоторые функции потребуют, чтобы я сохранил какой-то стек (стек известных переменных) в постоянном контексте посетителей, который расширяется и уменьшается по мере продвижения по ходу посещения. Разрывает ли он шаблон посетителя?Состояние штабеля у посетителя нарушает шаблон посетителя?
1
A
ответ
2
Посетители могут собирать информацию во время своих посещений - фактически реализация Visit - это состояние добавления, которое может потребоваться при сложных операциях (например, когда узлы дерева выражений находятся далеко друг от друга и все еще должны знать друг о друге) ... Таким образом, можно с уверенностью сказать, что вы можете хранить состояние (даже в виде стека) в Visitor, пока вы не храните какую-либо информацию непосредственно на обработанных/посещенных узлах.
Смежные вопросы
- 1. Шаблон посетителя: изменить состояние объекта?
- 2. Простой шаблон посетителя неисправен
- 3. Шаблон посетителя или полиморфизм?
- 4. Упрощенный шаблон посетителя
- 5. Зачем использовать шаблон посетителя?
- 6. Шаблон посетителя в Scala
- 7. Шаблон посетителя в python
- 8. Шаблон посетителя и рекурсия
- 9. Java шаблон посетителя 2
- 10. Командный шаблон против шаблона посетителя
- 11. Шаблон посетителя и составной шаблон
- 12. Шаблон посетителя и его инкапсуляция
- 13. ANTLR AST и шаблон посетителя
- 14. Шаблон посетителя и логические операции
- 15. Шаблон посетителя в Objective-C
- 16. Общий шаблон посетителя в java
- 17. Шаблон посетителя + Открытый/Закрытый Принцип
- 18. Шаблон посетителя: переопределение и перегрузка
- 19. Шаблон посетителя «не реализует интерфейс»
- 20. шаблон посетителя с условными обозначениями?
- 21. Объективные категории C == шаблон посетителя?
- 22. Как сохранить состояние на узле шаблона посетителя?
- 23. Шаблон наблюдателя + шаблон посетителя для системы сообщений
- 24. Как использовать шаблон посетителя для замены «instanceof»
- 25. шаблон, похожий на посетителя, для объектов шаблона
- 26. Требуется некоторый шаблон, похожий на посетителя
- 27. Шаблон посетителя, удалить необходимость в отливке
- 28. Шаблон посетителя по умолчанию для свойств
- 29. Расширить шаблон посетителя без изменения исходного кода?
- 30. Как реализовать шаблон посетителя в javascript?