Spec-Zone.ru › Ruby 3.3

класс Prism::Visitor

Родитель:
Prism::BasicVisitor

Визитор — это класс, который предоставляет реализацию по умолчанию для каждого метода accept, определённого на узлах. Это означает, что он может пройти по дереву, не требуя от вызывающего стороны определения какого-либо специального обработки. Это позволяет обрабатывать подмножество дерева, при этом обходя всё дерево.

Например, чтобы найти все вызовы методов, которые вызывают метод «foo», можно написать:

class FooCalls < Prism::Visitor
  def visit_call_node(node)
    if node.name == "foo"
      # Do something with the node
    end

    # Call super so that the visitor continues walking the tree
    super
  end
end

Ruby Core © 1993–2022 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API