lsst.pex.config g364dc83bf4+1d28dfd693
Loading...
Searching...
No Matches
lsst.pex.config.listField.ListField Class Reference
Inheritance diagram for lsst.pex.config.listField.ListField:
lsst.pex.config.config.Field

Public Member Functions

 __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)
Public Member Functions inherited from lsst.pex.config.config.Field
 __class_getitem__ (cls, tuple[type,...]|type|ForwardRef params)
 __init__ (self, doc, dtype=None, default=None, check=None, optional=False, deprecated=None)
 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")
None __set__ (self, Config instance, FieldTypeVar|None value, Any at=None, str label="assignment")
 __delete__ (self, instance, at=None, label="deletion")

Public Attributes

 listCheck = listCheck
 itemCheck = itemCheck
 itemtype = dtype
 length = length
 minLength = minLength
 maxLength = maxLength
Public Attributes inherited from lsst.pex.config.config.Field
 dtype = dtype
 doc = doc
 deprecated = deprecated
 default = default
 check = check
 optional = optional
 source = source

Protected Member Functions

List[FieldTypeVar]|None _copy_storage (self, Config old, Config new)
 _compare (self, instance1, instance2, shortcut, rtol, atol, output)
Protected Member Functions inherited from lsst.pex.config.config.Field
 _setup (self, doc, dtype, default, check, optional, source, deprecated)
 _validateValue (self, value)
 _collectImports (self, instance, imports)

Additional Inherited Members

Static Public Attributes inherited from lsst.pex.config.config.Field
dict supportedTypes = {str, bool, float, int, complex}
Static Protected Member Functions inherited from lsst.pex.config.config.Field
Mapping[str, Any] _parseTypingArgs (tuple[type,...]|tuple[str,...] params, Mapping[str, Any] kwds)

Detailed Description

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 : `type`, optional
    The data type of items in the list. Optional if supplied as typing
    argument to the class.
default : `collections.abc.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 : `collections.abc.Callable`, optional
    A callable that validates the list as a whole.
itemCheck : `collections.abc.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

Member Function Documentation

◆ _compare()

lsst.pex.config.listField.ListField._compare ( self,
instance1,
instance2,
shortcut,
rtol,
atol,
output )
protected
Compare two config instances for equality with respect to this
field.

`lsst.pex.config.config.compare` is the primary user of this method.

Parameters
----------
instance1 : `lsst.pex.config.Config`
    Left-hand-side `~lsst.pex.config.Config` instance in the
    comparison.
instance2 : `lsst.pex.config.Config`
    Right-hand-side `~lsst.pex.config.Config` instance in the
    comparison.
shortcut : `bool`
    If `True`, return as soon as an **inequality** is found.
rtol : `float`
    Relative tolerance for floating point comparisons.
atol : `float`
    Absolute tolerance for floating point comparisons.
output : `collections.abc.Callable`
    If not None, a callable that takes a `str`, used (possibly
    repeatedly) to report inequalities.

Returns
-------
equal : `bool`
    `True` if the fields are equal; `False` otherwise.

Notes
-----
Floating point comparisons are performed by `numpy.allclose`.

Reimplemented from lsst.pex.config.config.Field.

◆ _copy_storage()

List[FieldTypeVar] | None lsst.pex.config.listField.ListField._copy_storage ( self,
Config old,
Config new )
protected
Copy the storage for this field in the given field into an object
suitable for storage in a new copy of that config.

Any frozen storage should be unfrozen.

Reimplemented from lsst.pex.config.config.Field.

◆ toDict()

lsst.pex.config.listField.ListField.toDict ( self,
instance )
Convert the value of this field to a plain `list`.

`lsst.pex.config.Config.toDict` is the primary user of this method.

Parameters
----------
instance : `lsst.pex.config.Config`
    The config instance that contains this field.

Returns
-------
`list`
    Plain `list` of items, or `None` if the field is not set.

Reimplemented from lsst.pex.config.config.Field.

◆ validate()

lsst.pex.config.listField.ListField.validate ( self,
instance )
Validate the field.

Parameters
----------
instance : `lsst.pex.config.Config`
    The config instance that contains this field.

Raises
------
lsst.pex.config.FieldValidationError
    Raised if:

    - The field is not optional, but the value is `None`.
    - The list itself does not meet the requirements of the ``length``,
      ``minLength``, or ``maxLength`` attributes.
    - The ``listCheck`` callable returns `False`.

Notes
-----
Individual item checks (``itemCheck``) are applied when each item is
set and are not re-checked by this method.

Reimplemented from lsst.pex.config.config.Field.


The documentation for this class was generated from the following file:
  • python/lsst/pex/config/listField.py