R: Additional (Support) Functions for Methods

MethodSupport {methods} | R Documentation

## Additional (Support) Functions for Methods

### Description

These are support routines for computations on formal methods.

### Usage

    listFromMethods(generic, where, table)

    getMethodsForDispatch(f, fdef)

    cacheMethod(f, sig, def, args, fdef, inherited = FALSE)

    resetGeneric(f, fdef, mlist, where, deflt)

### Summary of Functions

`listFromMethods`:
  A list object describing the methods for the function `generic`, supplied either as the function or the name of the function. If `where` is supplied, this should be an environment or search list position from which a table of methods for the generic will be taken. If `table` is supplied, this is itself assumed to be such a table. If neither argument is supplied, the table is taken directly from the generic function (that is, the current set of methods defined for this generic).

  Returns an object of class `"LinearMethodsList"` (see LinearMethodsList-class) describing all the methods in the relevant table.

`resetGeneric`:
  reset the currently defined methods for this generic to the currently visible methods, looking from environment `where`. Returns `TRUE` or `FALSE` according to whether information for the function was found in the metadata.

  Normally not called directly, since changes to methods, attaching and detaching packages all generate a call automatically.

`cacheMethod`:
  Store the definition for this function and signature in the method metadata for the function. Used to store extensions of coerce methods found through inheritance, and to cache methods with `callNextMethod` information.

  No persistent effect, since the method metadata is session-scope only.

`getMethodsForDispatch`:
  Get the current methods list object representing the methods for function `f`, merged from the various packages and with any additional caching information stored in the `allMethods` slot.

  If methods have not yet been merged, calling `getMethodsForDispatch` will cause the merge to take place.

[Package methods version 2.6.2 Index]