class Bundler::Dependencies::Visitors::Paths

Public Instance Methods

walk(graph, name, acc = [], key = []) click to toggle source
# File lib/bundler/dependencies/visitors/paths.rb, line 5
def walk(graph, name, acc = [], key = [])
  graph.each do |gem|
    next unless gem.include_dependency?(name)

    new_key = key.dup.push(gem.name)
    walk(gem.dependencies, name, acc, new_key)
    acc << (new_key << name) if gem.dependencies.include?(name)
  end

  acc
end