class Packwerk::NodeVisitor
Public Class Methods
new(node_processor:)
click to toggle source
# File lib/packwerk/node_visitor.rb, line 6 def initialize(node_processor:) @node_processor = node_processor end
Public Instance Methods
visit(node, ancestors:, result:)
click to toggle source
# File lib/packwerk/node_visitor.rb, line 10 def visit(node, ancestors:, result:) result.concat(@node_processor.call(node, ancestors)) child_ancestors = [node] + ancestors Node.each_child(node) do |child| visit(child, ancestors: child_ancestors, result: result) end end