Class: MetzScan::Analyzers::NamespaceLeakPressure::ReferenceCollector

Inherits:
Object
  • Object
show all
Defined in:
lib/metz_scan/analyzers/namespace_leak_pressure/reference_collector.rb

Instance Method Summary collapse

Constructor Details

#initialize(index) ⇒ ReferenceCollector

Returns a new instance of ReferenceCollector.



7
8
9
# File 'lib/metz_scan/analyzers/namespace_leak_pressure/reference_collector.rb', line 7

def initialize(index)
  @index = index
end

Instance Method Details

#for(declaration) ⇒ Object



11
12
13
14
15
16
# File 'lib/metz_scan/analyzers/namespace_leak_pressure/reference_collector.rb', line 11

def for(declaration)
  home_namespace_parts = Namespace.new(declaration.name).home_path_parts
  index.constant_references_to(declaration.name).filter_map do |reference|
    counted_reference_for(reference, declaration.path, home_namespace_parts)
  end
end