класс Prism::BasicVisitor
Класс, знающий, как пройтись по дереву. Ни один из отдельных методов посещения не реализован в этом посетителе, поэтому он заставляет потребителя реализовать каждый необходимый. Для реализации по умолчанию, которая продолжает обход дерева, см. класс Visitor.
Публичные методы экземпляра
Исходный код
# File lib/prism/visitor.rb, line 17 def visit(node) # @type self: _Visitor node&.accept(self) end
Вызывает «accept` на заданном узле, если он не `nil`, что в свою очередь должно вызвать обратный вызов в этом посетителе, вызвав соответствующий метод `visit_*`.
Исходный код
# File lib/prism/visitor.rb, line 23
def visit_all(nodes)
# @type self: _Visitor
nodes.each { |node| node&.accept(self) }
end Посещает каждый узел в `nodes` путем вызова `accept` на каждом из них.
Исходный код
# File lib/prism/visitor.rb, line 29
def visit_child_nodes(node)
# @type self: _Visitor
node.compact_child_nodes.each { |node| node.accept(self) }
end Посещает дочерние узлы узла `node` путем вызова `accept` на каждом из них.
Ruby Core © 1993–2024 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.