param.Dynamic#

class param.Dynamic(default=None, *, doc=None, label=None, precedence=None, instantiate=False, constant=False, readonly=False, pickle_default_value=True, allow_None=False, per_instance=True, allow_refs=False, nested_refs=False)[source]#

Parameter whose value can be generated dynamically by a callable object.

If a Parameter is declared as Dynamic, it can be set a callable object (such as a function or callable class), and getting the parameter’s value will call that callable.

Note that at present, the callable object must allow attributes to be set on itself.

If set as time_dependent, setting the Dynamic.time_fn allows the production of dynamic values to be controlled: a new value will be produced only if the current value of time_fn is different from what it was the last time the parameter value was requested.

By default, the Dynamic parameters are not time_dependent so that new values are generated on every call regardless of the time. The default time_fn used when time_dependent is a single Time instance that allows general manipulations of time. It may be set to some other callable as required so long as a number is returned on each call.

__init__(default=None, *, doc=None, label=None, precedence=None, instantiate=False, constant=False, readonly=False, pickle_default_value=True, allow_None=False, per_instance=True, allow_refs=False, nested_refs=False)[source]#

Call the superclass’s __init__ and set instantiate=True if the default is dynamic.

Methods

__init__([default, doc, label, precedence, ...])

Call the superclass's __init__ and set instantiate=True if the default is dynamic.

deserialize(value)

Given a serializable Python value, return a value that the parameter can be set to

schema([safe, subset, mode])

serialize(value)

Given the parameter value, return a Python value suitable for serialization

Attributes

allow_None

allow_refs

constant

default

doc

instantiate

label

name

nested_refs

owner

per_instance

pickle_default_value

precedence

readonly

rx

time_dependent

time_fn

watchers