Class: EagerEye::Analyzer

Inherits:
Object
  • Object
show all
Defined in:
lib/eager_eye/analyzer.rb

Constant Summary collapse

DETECTOR_CLASSES =
{
  loop_association: Detectors::LoopAssociation,
  serializer_nesting: Detectors::SerializerNesting,
  missing_counter_cache: Detectors::MissingCounterCache
}.freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(paths: nil) ⇒ Analyzer

Returns a new instance of Analyzer.



15
16
17
18
# File 'lib/eager_eye/analyzer.rb', line 15

def initialize(paths: nil)
  @paths = Array(paths || EagerEye.configuration.app_path)
  @issues = []
end

Instance Attribute Details

#issuesObject (readonly)

Returns the value of attribute issues.



13
14
15
# File 'lib/eager_eye/analyzer.rb', line 13

def issues
  @issues
end

#pathsObject (readonly)

Returns the value of attribute paths.



13
14
15
# File 'lib/eager_eye/analyzer.rb', line 13

def paths
  @paths
end

Instance Method Details

#runObject



20
21
22
23
24
25
26
27
28
# File 'lib/eager_eye/analyzer.rb', line 20

def run
  @issues = []

  ruby_files.each do |file_path|
    analyze_file(file_path)
  end

  @issues
end