class Derketo::Tracer
Attributes
events[RW]
Public Class Methods
new(scope: nil)
click to toggle source
# File lib/derketo/tracer.rb, line 7 def initialize(scope: nil) @events = Derketo::EventTrace.new @tracepoint = TracePoint.new(:call, :return) do |tp| if scope.nil? || tp.path.include?(scope) if tp.event == :call @events.push(Derketo::Events::Call.new(tp)) elsif tp.event == :return @events.push(Derketo::Events::Return.new(tp)) end end end end
Public Instance Methods
trace() { || ... }
click to toggle source
# File lib/derketo/tracer.rb, line 20 def trace @tracepoint.enable response = yield @tracepoint.disable response end