check.options              package:base              R Documentation

Set Options with Consistency Checks

Description:

     Utility function for setting options with some consistency checks.
     The `attributes' of the new settings in `new' are checked for
     consistency with the model (often default) list in `name.opt'.

Usage:

     check.options(new, name.opt, reset = FALSE, assign.opt = FALSE,
                   envir = .GlobalEnv, check.attributes = c("mode", "length"),
                   override.check = FALSE)

Arguments:

     new: a named list

name.opt: character with the name of R object containing the ``model''
          (default) list.

   reset: logical; if `TRUE', reset the options from `name.opt'.  If
          there is more than one R object with name `name.opt', remove
          the first one in the `search()' path.

assign.opt: logical; if `TRUE', assign the ...

   envir: the `environment' used for `get' and `assign'.

check.attributes: character containing the attributes which
          `check.options' should check.

override.check: logical vector of length `length(new)' (or 1 which
          entails recycling). For those `new[i]' where
          `override.check[i] == TRUE', the checks are overriden and the
          changes made anyway.

Value:

     A list of components with the same names as the one called
     `name.opt'. The values of the components are changed from the
     `new' list, as long as these pass the checks (when these are not
     overridden according to `override.check').

Author(s):

     Martin Maechler

See Also:

     `ps.options' which uses `check.options'.

Examples:

     L1 <- list(a=1:3, b=pi, ch="CH")
     str(L2 <- check.options(list(a=0:2), name.opt = "L1"))
     str(check.options(NULL, reset = TRUE, name.opt = "L1"))

