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