Learn R Programming

statnet.common (version 4.11.0)

snctrl_names: Helper functions used by packages to facilitate snctrl updating.

Description

Helper functions used by packages to facilitate snctrl updating.

Usage

snctrl_names()

update_snctrl(myname, arglists = NULL, callback = NULL)

collate_controls(x = NULL, ...)

UPDATE_MY_SCTRL_EXPR

COLLATE_ALL_MY_CONTROLS_EXPR

Value

update_snctrl() has no return value and is used for its side-effects.

collate_controls() returns the combined list of name-default pairs of each function.

Format

UPDATE_MY_SCTRL_EXPR is a quoted expression meant to be passed directly to eval().

COLLATE_ALL_MY_CONTROLS_EXPR is a quoted expression meant to be passed directly to eval().

Arguments

myname

Name of the package defining the arguments.

arglists

A named list of argument name-default pairs. If the list is not named, it is first passed through collate_controls().

callback

A function with no arguments that updates the packages own copy of snctrl().

x

Either a function, a list of functions, or an environment. If x is an environment, all functions starting with dQuote(control.) are obtained.

...

Additional functions or lists of functions.

Functions

  • snctrl_names(): Typeset the currently defined list of argument names by package and control function.

  • update_snctrl(): Typically called from .onLoad(), Update the argument list of snctrl() to include additional argument names associated with the package, and set a callback for the package to update its own copy.

  • collate_controls(): Obtain and concatenate the argument lists of specified functions or all functions starting with dQuote(control.) in the environment.

  • UPDATE_MY_SCTRL_EXPR: A stored expression that, if evaluated, will create a callback function update_my_snctrl() that will update the client package's copy of snctrl().

  • COLLATE_ALL_MY_CONTROLS_EXPR: A stored expression that, if evaluated on loading, will add arguments of the package's control.*() functions to snctrl() and set the callback.

Examples

Run this code
if (FALSE) {
# In the client package (outside any function):
eval(UPDATE_MY_SCTRL_EXPR)
}
if (FALSE) {
# In the client package:
.onLoad <- function(libame, pkgname){
  # ... other code ...
  eval(statnet.common::COLLATE_ALL_MY_CONTROLS_EXPR)
  # ... other code ...
}
}

Run the code above in your browser using DataLab