Automatic trace utility


#1

Hi All,

Recently I’m writing lots of recursive functions that I’d like to test
by examining their backtraces. I wonder if something like the following
is possible:

def foo (x, y, z)
trace if $DEBUG

end

foo(1,2,3)
“trace: foo (1,2,3) called”

The trace function would have to figure out function’s name and list
arguments. If someone has some ideas, please let me know. Thanks in
anticipation.


#2

There’s #set_trace_func built-in to Ruby. Or for a more complete
solution try Calibre’s TracePoint. (see Rubyforge)

HTH,
T.


#3

In message removed_email_address@domain.invalid, Kyku removed_email_address@domain.invalid writes

The trace function would have to figure out function’s name and list
arguments.

Ruby Bug Validator does all of the above and can apply filters and also
colour highlight items of interest that you select based on keywords.

    http://www.softwareverify.com

Stephen


#4

Dnia niedziela, 4 grudnia 2005 22:03, Trans napisa³:

There’s #set_trace_func built-in to Ruby. Or for a more complete
solution try Calibre’s TracePoint. (see Rubyforge)

HTH,
T.

Quite nice, but how about auto-magical tracing of passed arguments.