|
| __init__ (self, doc, dtype=None, default=None, optional=False, listCheck=None, itemCheck=None, length=None, minLength=None, maxLength=None, deprecated=None) |
|
| validate (self, instance) |
|
None | __set__ (self, Config instance, Iterable[FieldTypeVar]|None value, Any at=None, str label="assignment") |
|
| toDict (self, instance) |
|
| __class_getitem__ (cls, tuple[type,...]|type|ForwardRef params) |
|
| rename (self, instance) |
|
| freeze (self, instance) |
|
| save (self, outfile, instance) |
|
Field[FieldTypeVar] | __get__ (self, None instance, Any owner=None, Any at=None, str label="default") |
|
FieldTypeVar | __get__ (self, Config instance, Any owner=None, Any at=None, str label="default") |
|
| __get__ (self, instance, owner=None, at=None, label="default") |
|
| __delete__ (self, instance, at=None, label="deletion") |
|
| validateItem (self, i, x) |
|
| list (self) |
|
| __contains__ (self, x) |
|
| __len__ (self) |
|
None | __setitem__ (self, int i, FieldTypeVar x, Any at=None, str label="setitem", bool setHistory=True) |
|
None | __setitem__ (self, slice i, Iterable[FieldTypeVar] x, Any at=None, str label="setitem", bool setHistory=True) |
|
| __setitem__ (self, i, x, at=None, label="setitem", setHistory=True) |
|
FieldTypeVar | __getitem__ (self, int i) |
|
MutableSequence[FieldTypeVar] | __getitem__ (self, slice i) |
|
| __getitem__ (self, i) |
|
| __delitem__ (self, i, at=None, label="delitem", setHistory=True) |
|
| __iter__ (self) |
|
| insert (self, i, x, at=None, label="insert", setHistory=True) |
|
| __repr__ (self) |
|
| __str__ (self) |
|
| __eq__ (self, other) |
|
| __ne__ (self, other) |
|
| __setattr__ (self, attr, value, at=None, label="assignment") |
|
| __reduce__ (self) |
|
A configuration field (`~lsst.pex.config.Field` subclass) that contains
a list of values of a specific type.
Parameters
----------
doc : `str`
A description of the field.
dtype : class, optional
The data type of items in the list. Optional if supplied as typing
argument to the class.
default : sequence, optional
The default items for the field.
optional : `bool`, optional
Set whether the field is *optional*. When `False`,
`lsst.pex.config.Config.validate` will fail if the field's value is
`None`.
listCheck : callable, optional
A callable that validates the list as a whole.
itemCheck : callable, optional
A callable that validates individual items in the list.
length : `int`, optional
If set, this field must contain exactly ``length`` number of items.
minLength : `int`, optional
If set, this field must contain *at least* ``minLength`` number of
items.
maxLength : `int`, optional
If set, this field must contain *no more than* ``maxLength`` number of
items.
deprecated : None or `str`, optional
A description of why this Field is deprecated, including removal date.
If not None, the string is appended to the docstring for this Field.
See Also
--------
ChoiceField
ConfigChoiceField
ConfigDictField
ConfigField
ConfigurableField
DictField
Field
RangeField
RegistryField
None lsst.pex.config.listField.ListField.__set__ |
( |
| self, |
|
|
Config | instance, |
|
|
Iterable[FieldTypeVar] | None | value, |
|
|
Any | at = None, |
|
|
str | label = "assignment" ) |
Set an attribute on the config instance.
Parameters
----------
instance : `lsst.pex.config.Config`
The config instance that contains this field.
value : obj
Value to set on this field.
at : `list` of `~lsst.pex.config.callStack.StackFrame` or `None`,\
optional
The call stack (created by
`lsst.pex.config.callStack.getCallStack`).
label : `str`, optional
Event label for the history.
Notes
-----
This method is invoked by the owning `lsst.pex.config.Config` object
and should not be called directly.
Derived `~lsst.pex.config.Field` classes may need to override the
behavior. When overriding ``__set__``, `~lsst.pex.config.Field` authors
should follow the following rules:
- Do not allow modification of frozen configs.
- Validate the new value **before** modifying the field. Except if the
new value is `None`. `None` is special and no attempt should be made
to validate it until `lsst.pex.config.Config.validate` is called.
- Do not modify the `~lsst.pex.config.Config` instance to contain
invalid values.
- If the field is modified, update the history of the
`lsst.pex.config.field.Field` to reflect the changes.
In order to decrease the need to implement this method in derived
`~lsst.pex.config.Field` types, value validation is performed in the
`lsst.pex.config.Field._validateValue`. If only the validation step
differs in the derived `~lsst.pex.config.Field`, it is simpler to
implement `lsst.pex.config.Field._validateValue` than to reimplement
``__set__``. More complicated behavior, however, may require
reimplementation.
Reimplemented from lsst.pex.config.config.Field.