Module: Asgard::Doctor::ImportTracer

Defined in:
lib/asgard/doctor.rb

Overview

Prepended onto Kernel for the process lifetime of asgard --doctor (Asgard.run! exits right after Doctor#run, so it's never unprepended) to observe every import/import_up call, whether typed at the top level of a .loki file or reached indirectly through another import.

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.doctorObject

Returns the value of attribute doctor.



119
120
121
# File 'lib/asgard/doctor.rb', line 119

def doctor
  @doctor
end

Class Method Details

.trace_message(verb, arg, added) ⇒ Object



140
141
142
143
144
145
# File 'lib/asgard/doctor.rb', line 140

def self.trace_message(verb, arg, added)
  inspected = arg.inspect
  return "#{verb} #{inspected} -- nothing new (not found or already loaded)" if added.empty?

  "#{verb} #{inspected} -> #{added.join(', ')}"
end