paradox (version 0.1.0)

ParamSetCollection: ParamSetCollection

Description

A collection of multiple ParamSet objects.

  • The collection is basically a light-weight wrapper / container around references to multiple sets.

  • In order to ensure unique param names, every param in the collection is referred to with "<set_id>.<param_id>". Parameters from ParamSets with empty (i.e. "") $set_id are referenced directly. Multiple ParamSets with $set_id "" can be combined, but their parameter names must be unique.

  • Operation subset is currently not allowed.

  • Operation add currently only works when adding complete sets not single params.

  • When you either ask for 'values' or set them, the operation is delegated to the individual, contained param set references. The collection itself does not maintain a values state. This also implies that if you directly change values in one of the referenced sets, this change is reflected in the collection.

  • Dependencies: It is possible to currently handle dependencies

    • regarding parameters inside of the same set - in this case simply add the dependency to the set, best before adding the set to the collection

    • across sets, where a param from one set depends on the state of a param from another set - in this case add call add_dep on the collection.

    If you call deps on the collection, you are returned a complete table of dependencies, from sets and across sets.

Arguments

Format

R6::R6Class object inheriting from ParamSet.

Construction

ParamSetCollection$new(sets)
  • sets :: list of ParamSet Parameter objects are cloned.

Methods

  • remove_sets(ids) character() -> self Removes sets of given ids from collection.