set_trace_func(proc) â proc
set_trace_func(nil) â nil
set_trace_func(nil) â nil
Instance Public methods
Establishes proc as the handler for tracing, or disables tracing
if the parameter is nil
.
proc takes up to six parameters:
-
an event name
-
a filename
-
a line number
-
an object id
-
a binding
-
the name of a class
proc is invoked whenever an event occurs.
Events are:
-
c-call
-
call a C-language routine
-
c-return
-
return from a C-language routine
-
call
-
call a Ruby method
-
class
-
start a class or module definition),
-
end
-
finish a class or module definition),
-
line
-
execute code on a new line
-
raise
-
raise an exception
-
return
-
return from a Ruby method
Tracing is disabled within the context of proc.
class Test def test a = 1 b = 2 end end set_trace_func proc { |event, file, line, id, binding, classname| printf "%8s %s:%-2d %10s %8s\n", event, file, line, id, classname } t = Test.new t.test line prog.rb:11 false c-call prog.rb:11 new Class c-call prog.rb:11 initialize Object c-return prog.rb:11 initialize Object c-return prog.rb:11 new Class line prog.rb:12 false call prog.rb:2 test Test line prog.rb:3 test Test line prog.rb:4 test Test return prog.rb:4 test Test
Please login to continue.