Skip to contents

Given a Dictionary, retrieve objects with provided keys.

  • dictionary_sugar_get() to retrieve a single object with key .key.

  • dictionary_sugar_mget() to retrieve a list of objects with keys .keys.

  • dictionary_sugar() is deprecated in favor of dictionary_sugar_get().

  • If .key or .keys is missing, the dictionary itself is returned.

Arguments in ... must be named and are consumed in the following order:

  1. All arguments whose names match the name of an argument of the constructor are passed to the $get() method of the Dictionary for construction.

  2. All arguments whose names match the name of a parameter of the paradox::ParamSet of the constructed object are set as parameters. If there is no paradox::ParamSet in obj$param_set, this step is skipped.

  3. All remaining arguments are assumed to be regular fields of the constructed R6 instance, and are assigned via <-.

Usage

dictionary_sugar_get(dict, .key, ..., .dicts_suggest = NULL)

dictionary_sugar(dict, .key, ..., .dicts_suggest = NULL)

dictionary_sugar_mget(dict, .keys, ..., .dicts_suggest = NULL)

Arguments

dict

(Dictionary).

.key

(character(1))
Key of the object to construct.

...

(any)
See description.

.dicts_suggest

(named list) Named list of dictionaries used to look up suggestions for .key if .key does not exist in dict.

.keys

(character())
Keys of the objects to construct.

Examples

library(R6)
item = R6Class("Item", public = list(x = 0))
d = Dictionary$new()
d$add("key", item)
dictionary_sugar_get(d, "key", x = 2)
#> <Item>
#>   Public:
#>     clone: function (deep = FALSE) 
#>     x: 2