TraceClasses             package:methods             R Documentation

Classes Used Internally to Control Tracing

Description:

     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.

Usage:

     ### 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 from the Class:

     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.)

Slots:

     '.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"'. 

Extends:

     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"'.

Methods:

     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.

See Also:

     function 'trace'

