[R] tracing SV3 methods
William Dunlap
wdunlap at tibco.com
Wed Mar 11 20:30:08 CET 2009
I would like to put traces on the methods for an SV3 generic
and trace() doesn't seem to work. E.g.,
> median(1:10)
[1] 5.5
> trace(median.default)
> median(1:10) # expect "Tracing median.default ..."
[1] 5.5
I can tell that median.default is getting called, since
a trace on sort() shows it in the traceback:
> trace(sort,Quote(cat(deparse(sys.calls()),sep="\n")))
Tracing function "sort" in package "base"
[1] "sort"
> median(1:10)
Tracing sort(x, partial = half + 0L:1L) on entry
list(median(1:10), median.default(1:10), sort(x,
partial = half + 0L:1L), .doTrace(cat(deparse(
sys.calls()), sep = "\n"), "on entry"),
eval.parent(exprObj), eval(expr,p), eval(expr,
envir, enclos))
[1] 5.5
Is there a recommended way to do this? (I'd like to put a
trace on all methods of a SV3 generic to see which get called
in various situations.)
This was in R 2.8.1 on Windows but I see the same results
in several versions of R.
Bill Dunlap
TIBCO Software Inc - Spotfire Division
wdunlap tibco.com
More information about the R-help
mailing list