Class: DiyProf::Tracer
- Inherits:
-
Object
- Object
- DiyProf::Tracer
- Includes:
- TimeHelpers
- Defined in:
- lib/diy_prof/lib/diy_prof/tracer.rb
Instance Method Summary collapse
- #disable ⇒ Object
- #enable ⇒ Object
-
#initialize(reporter) ⇒ Tracer
constructor
A new instance of Tracer.
- #result ⇒ Object
Methods included from TimeHelpers
Constructor Details
#initialize(reporter) ⇒ Tracer
Returns a new instance of Tracer.
5 6 7 8 9 10 11 12 |
# File 'lib/diy_prof/lib/diy_prof/tracer.rb', line 5 def initialize(reporter) @reporter = reporter @tracepoints = [:call, :return].collect do |event| TracePoint.new(event) do |trace| reporter.record(event, trace.method_id, cpu_time) end end end |
Instance Method Details
#disable ⇒ Object
17 18 19 |
# File 'lib/diy_prof/lib/diy_prof/tracer.rb', line 17 def disable @tracepoints.each(&:disable) end |
#enable ⇒ Object
13 14 15 |
# File 'lib/diy_prof/lib/diy_prof/tracer.rb', line 13 def enable @tracepoints.each(&:enable) end |
#result ⇒ Object
21 22 23 |
# File 'lib/diy_prof/lib/diy_prof/tracer.rb', line 21 def result @reporter.result end |