# class Prism::BasicVisitor

A class that knows how to walk down the tree. None of the individual visit methods are implemented on this visitor, so it forces the consumer to implement each one that they need. For a default implementation that continues walking the tree, see the `Visitor` class.

### Public Instance Methods

visit (node)
Source

    # File lib/prism/visitor.rb, line 17
    def visit(node)
      # @type self: _Visitor
      node&.accept(self)
    end

Calls ‘accept` on the given node if it is not `nil`, which in turn should call back into this visitor by calling the appropriate `visit_*` method.

visit_all (nodes)
Source

    # File lib/prism/visitor.rb, line 23
    def visit_all(nodes)
      # @type self: _Visitor
      nodes.each { |node| node&.accept(self) }
    end

Visits each node in ‘nodes` by calling `accept` on each one.

visit_child_nodes (node)
Source

    # 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

Visits the child nodes of ‘node` by calling `accept` on each one.