Utilities to add to the table of search paths, import commands and tasks for all evalutors of the specified class. Called only from analogous functions in packages for specific languages.
serverAddToPath(Class, directory,
package = utils::packageName(topenv(parent.frame())), pos = NA,
onLoad = NA, where = topenv(parent.frame()))serverImport(Class, ..., onLoad = nzchar(packageName(where)) &&
!environmentIsLocked(where), where = topenv(parent.frame()))
serverTask(Class, command, onLoad = nzchar(packageName(where)),
where = topenv(parent.frame()))
the class of the server-specific evalutor.
the directory to add to the search path table.
the name of the server-specific interface package.
where in the list of directories to insert this one. Defaults to the end.
used to set up a load action; should be omitted if called from a package source
arguments to pass to the evaluator's $Import()
method
an unevaluated command or expression for the evaluator.
serverAddToPath
: Add the directory to the search path of all evaluators of this class.
serverImport
: An import command with these arguments will be executed for each new evaluator of this
interface class, and for the current evaluator if one exists.
serverTask
: An unevalated command or expression for the interface is supplied, typically using
quote()
or substitute
. When an evaluator from the class is created, this
command will be evaluated.
The server-specific information is added to the table stored by the XR package. All future evaluators for the specified interface class will have these directories in their search path, will import the module information specified and carry out any other tasks supplied.
If a current evaluator for this class exists, it applies all the commands, but previous evalutors for this class are not modified.
Commands are evaluated in the order of the calls to these functions. For example, the application package should execute a call to add to the search path before any calls to import modules form the corresponding directory.
Chambers, John M. (2016) Extending R, Chapman & Hall/CRC. ( Chapter 13, discussing this package, is included in the package: ../doc/Chapter_XR.pdf.)