| rk.replace.function {rkward} | R Documentation |
rk.replace.function(functionname, environment, replacement, copy.formals=TRUE)
functionname |
name of the function to be replaced (character). |
environment |
package environment or namespace, where replacment should be done. |
replacement |
the replacement. This should be a function. |
copy.formals |
logical; whether to copy the formals from the original function. |
rk.replace.function can be used to replace a function inside a different package / namespace. It is mainly intended for internal usage inside rkward, e.g. to replace menu and select.list with appropriate GUI implementations.
The original function is assigned to the environment of the rkward package, as ".rk.FUNCTIONAME.default", and can be referred to from the replacement. WARNING: This mechansim does not support several subsequent replacments of the same function.
WARNING: This function can be used to alter - and disrupt - internal functions in arbitrary ways. You better know what you are doing.
WARNING: Does not work well on generics!
Returns NULL, invisibly, unconditionally.
Thomas Friedrichsmeier rkward-devel@lists.sourceforge.net
## Not run
rk.replace.function ("history", as.environment ("package:utils"),
function () {
cat ("This is what you typed:\n")
eval (body (.rk.history.default))
})
## End not run