Class: DepGraph::NodeFinders::GemsNodeFinder

Inherits:
Object
  • Object
show all
Defined in:
lib/nodefinders/gems_node_finder.rb

Instance Method Summary collapse

Constructor Details

#initializeGemsNodeFinder

Returns a new instance of GemsNodeFinder.



6
7
8
# File 'lib/nodefinders/gems_node_finder.rb', line 6

def initialize
  @spec_directories = Gem::Specification.dirs
end

Instance Method Details

#get_nodesObject



14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/nodefinders/gems_node_finder.rb', line 14

def get_nodes
  require 'rubygems'

  fail 'The gem specification directories were not set' unless @spec_directories and @spec_directories.size > 0

  nodes = {}
  @spec_directories.each do |spec_directory|
    Dir["#{spec_directory}/**/*.gemspec"].each do |gemspec_file_name|
      add_nodes_from_gemspec(nodes, gemspec_file_name)
    end
  end

  return nodes.values.sort
end

#location=(loc) ⇒ Object



10
11
12
# File 'lib/nodefinders/gems_node_finder.rb', line 10

def location=(loc)
  @spec_directories = loc
end