The classes described here are used by the R function
trace
to create versions of functions and methods
including browser calls, etc., and also to untrace
the
same objects.
### Objects from the following classes are generated
### by calling trace() on an object from the corresponding
### class without the "WithTrace" in the name."functionWithTrace"
"MethodDefinitionWithTrace"
"MethodWithNextWithTrace"
"genericFunctionWithTrace"
"groupGenericFunctionWithTrace"
### the following is a virtual class extended by each of the
### classes above
"traceable"
Objects will be created from these classes by calls to trace
.
(There is an initialize
method for class
"traceable"
, but you are unlikely to need it directly.)
.Data
:The data part, which will be "function"
for class "functionWithTrace"
, and similarly for the other
classes.
original
:Object of the original class; e.g.,
"function"
for class "functionWithTrace"
.
Each of the classes extends the corresponding untraced class, from the
data part; e.g., "functionWithTrace"
extends "function"
.
Each of the specific classes extends "traceable"
, directly,
and class "VIRTUAL"
, by class "traceable"
.
The point of the specific classes is that objects generated from them,
by function trace()
, remain callable or dispatchable, in
addition to their new trace information.
function trace