lsst.pex.config g3cd1b1f544+0c8e0b6905
|
Public Member Functions | |
def | __init__ (self, doc, keytype, itemtype, default=None, optional=False, dictCheck=None, itemCheck=None, deprecated=None) |
def | rename (self, instance) |
def | validate (self, instance) |
def | toDict (self, instance) |
def | save (self, outfile, instance) |
def | freeze (self, instance) |
![]() | |
def | __init__ (self, doc, keytype=None, itemtype=None, default=None, optional=False, dictCheck=None, itemCheck=None, deprecated=None) |
def | validate (self, instance) |
None | __set__ (self, Config instance, Union[Mapping[KeyTypeVar, ItemTypeVar], None] value, Any at=None, str label="assignment") |
def | toDict (self, instance) |
![]() | |
def | __class_getitem__ (cls, Union[tuple[type,...], type, ForwardRef] params) |
def | __init__ (self, doc, dtype=None, default=None, check=None, optional=False, deprecated=None) |
def | rename (self, instance) |
def | validate (self, instance) |
def | freeze (self, instance) |
def | save (self, outfile, instance) |
def | toDict (self, 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") |
def | __get__ (self, instance, owner=None, at=None, label="default") |
None | __set__ (self, "Config" instance, Optional[FieldTypeVar] value, Any at=None, str label="assignment") |
def | __delete__ (self, instance, at=None, label="deletion") |
![]() | |
def | __init__ (self, config, field, value, at, label, setHistory=True) |
ItemTypeVar | __getitem__ (self, KeyTypeVar k) |
int | __len__ (self) |
Iterator[KeyTypeVar] | __iter__ (self) |
bool | __contains__ (self, Any k) |
None | __setitem__ (self, KeyTypeVar k, ItemTypeVar x, Any at=None, str label="setitem", bool setHistory=True) |
None | __delitem__ (self, KeyTypeVar k, Any at=None, str label="delitem", bool setHistory=True) |
def | __repr__ (self) |
def | __str__ (self) |
def | __setattr__ (self, attr, value, at=None, label="assignment") |
def | __reduce__ (self) |
Public Attributes | |
keytype | |
itemtype | |
dictCheck | |
itemCheck | |
![]() | |
keytype | |
itemtype | |
dictCheck | |
itemCheck | |
![]() | |
dtype | |
doc | |
deprecated | |
default | |
check | |
optional | |
source | |
Static Public Attributes | |
DictClass = ConfigDict | |
![]() | |
supportedTypes = set((str, bool, float, int, complex)) | |
Additional Inherited Members | |
![]() | |
history = property(lambda x: x._history) | |
A configuration field (`~lsst.pex.config.Field` subclass) that is a mapping of keys to `~lsst.pex.config.Config` instances. ``ConfigDictField`` behaves like `DictField` except that the ``itemtype`` must be a `~lsst.pex.config.Config` subclass. Parameters ---------- doc : `str` A description of the configuration field. keytype : {`int`, `float`, `complex`, `bool`, `str`} The type of the mapping keys. All keys must have this type. itemtype : `lsst.pex.config.Config`-type The type of the values in the mapping. This must be `~lsst.pex.config.Config` or a subclass. default : optional Unknown. default : ``itemtype``-dtype, optional Default value of this field. optional : `bool`, optional If `True`, this configuration `~lsst.pex.config.Field` is *optional*. Default is `True`. 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. Raises ------ ValueError Raised if the inputs are invalid: - ``keytype`` or ``itemtype`` arguments are not supported types (members of `ConfigDictField.supportedTypes`. - ``dictCheck`` or ``itemCheck`` is not a callable function. See also -------- ChoiceField ConfigChoiceField ConfigField ConfigurableField DictField Field ListField RangeField RegistryField Notes ----- You can use ``ConfigDictField`` to create name-to-config mappings. One use case is for configuring mappings for dataset types in a Butler. In this case, the dataset type names are arbitrary and user-selected while the mapping configurations are known and fixed.
def lsst.pex.config.configDictField.ConfigDictField.__init__ | ( | self, | |
doc, | |||
keytype, | |||
itemtype, | |||
default = None , |
|||
optional = False , |
|||
dictCheck = None , |
|||
itemCheck = None , |
|||
deprecated = None |
|||
) |
Reimplemented from lsst.pex.config.dictField.DictField.
def lsst.pex.config.configDictField.ConfigDictField.freeze | ( | self, | |
instance | |||
) |
Make this field read-only (for internal use only). Parameters ---------- instance : `lsst.pex.config.Config` The config instance that contains this field. Notes ----- Freezing is only relevant for fields that hold subconfigs. Fields which hold subconfigs should freeze each subconfig. **Subclasses should implement this method.**
Reimplemented from lsst.pex.config.config.Field.
def lsst.pex.config.configDictField.ConfigDictField.rename | ( | self, | |
instance | |||
) |
Rename the field in a `~lsst.pex.config.Config` (for internal use only). Parameters ---------- instance : `lsst.pex.config.Config` The config instance that contains this field. Notes ----- This method is invoked by the `lsst.pex.config.Config` object that contains this field and should not be called directly. Renaming is only relevant for `~lsst.pex.config.Field` instances that hold subconfigs. `~lsst.pex.config.Fields` that hold subconfigs should rename each subconfig with the full field name as generated by `lsst.pex.config.config._joinNamePath`.
Reimplemented from lsst.pex.config.config.Field.
def lsst.pex.config.configDictField.ConfigDictField.save | ( | self, | |
outfile, | |||
instance | |||
) |
Save this field to a file (for internal use only). Parameters ---------- outfile : file-like object A writeable field handle. instance : `Config` The `Config` instance that contains this field. Notes ----- This method is invoked by the `~lsst.pex.config.Config` object that contains this field and should not be called directly. The output consists of the documentation string (`lsst.pex.config.Field.doc`) formatted as a Python comment. The second line is formatted as an assignment: ``{fullname}={value}``. This output can be executed with Python.
Reimplemented from lsst.pex.config.config.Field.
def lsst.pex.config.configDictField.ConfigDictField.toDict | ( | self, | |
instance | |||
) |
Convert this field's key-value pairs into a regular `dict`. Parameters ---------- instance : `lsst.pex.config.Config` The configuration that contains this field. Returns ------- result : `dict` or `None` If this field has a value of `None`, then this method returns `None`. Otherwise, this method returns the field's value as a regular Python `dict`.
Reimplemented from lsst.pex.config.dictField.DictField.
def lsst.pex.config.configDictField.ConfigDictField.validate | ( | self, | |
instance | |||
) |
Validate the field's value (for internal use only). Parameters ---------- instance : `lsst.pex.config.Config` The configuration that contains this field. Returns ------- isValid : `bool` `True` is returned if the field passes validation criteria (see *Notes*). Otherwise `False`. Notes ----- This method validates values according to the following criteria: - A non-optional field is not `None`. - If a value is not `None`, is must pass the `ConfigField.dictCheck` user callback functon. Individual item checks by the `ConfigField.itemCheck` user callback function are done immediately when the value is set on a key. Those checks are not repeated by this method.
Reimplemented from lsst.pex.config.dictField.DictField.