class Courgette::DirectoryAnalyser

Attributes

capturer[R]
file2sexpr[R]

Public Class Methods

new() click to toggle source
# File lib/courgette/directory_analyser.rb, line 8
def initialize
  @capturer   = Courgette::Capturer.new
  @file2sexpr = Courgette::FileToSexpr.new
end

Public Instance Methods

analyse(pattern) click to toggle source
# File lib/courgette/directory_analyser.rb, line 13
def analyse pattern
  Dir.glob(pattern) do |file|
    capturer.capture file2sexpr.convert(file)
  end
end
graph() click to toggle source
# File lib/courgette/directory_analyser.rb, line 19
def graph
  Courgette::Graph.new definitions, dependencies
end

Private Instance Methods

definitions() click to toggle source
# File lib/courgette/directory_analyser.rb, line 26
def definitions
  capturer.definitions
end
dependencies() click to toggle source
# File lib/courgette/directory_analyser.rb, line 30
def dependencies
  r2d = Courgette::ReferenceToDependency.new definitions

  capturer.references.map do |reference|
    r2d.transform reference
  end.compact
end