patchCode

0th

Percentile

Patches installed and loaded packages and more

Patches installed and loaded packages and more.

Keywords
utilities, programming
Usage
# S3 method for default
patchCode(paths=NULL, recursive=TRUE, suppressWarnings=TRUE,
  knownExtensions=c("R", "r", "S", "s"), verbose=FALSE, ...)
Arguments
paths

The path to the directory (and subdirectories) which contains source code that will patch loaded packages. If NULL, the patch path is given by the option R_PATCHES, If the latter is not set, the system environment with the same name is used. If neither is given, then ~/R-patches/ is used.

recursive

If TRUE, source code in subdirectories will also get loaded.

suppressWarnings

If TRUE, warnings will be suppressed, otherwise not.

knownExtensions

A character vector of filename extensions used to identify source code files. All other files are ignored.

verbose

If TRUE, extra information is printed while patching, otherwise not.

...

Not used.

Details

The method will look for source code files (recursively or not) that match known filename extensions. Each found source code file is then source()d.

If the search is recursive, subdirectories are entered if and only if either (1) the name of the subdirectory is the same as a loaded (and installed) package, or (2) if there is no installed package with that name. The latter allows common code to be organized in directories although it is still not assigned to packages.

Each of the directories given by argument paths will be processed one by one. This makes it possible to have more than one file tree containing patches.

To set an options, see options(). To set a system environment, see Sys.setenv(). The character ; is interpreted as a separator. Due to incompatibility with Windows pathnames, : is not a valid separator.

Value

Returns (invisibly) the number of files sourced.

See Also

source(). library().

Aliases
  • patchCode.default
  • patchCode
Examples
# NOT RUN {
  # Patch all source code files in the current directory
  patchCode(".")

  # Patch all source code files in R_PATCHES
  options("R_PATCHES"="~/R-patches/")
  # alternatively, Sys.setenv("R_PATCHES"="~/R-patches/")
  patchCode()
# }
Documentation reproduced from package R.utils, version 2.8.0, License: LGPL (>= 2.1)

Community examples

Looks like there are no examples yet.