lsst.pex.config  18.0.0-1-gc037db8
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
lsst.pex.config.configDictField.ConfigDictField Class Reference
Inheritance diagram for lsst.pex.config.configDictField.ConfigDictField:
lsst.pex.config.dictField.DictField lsst.pex.config.config.Field

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 __set__ (self, instance, value, at=None, label="assignment")
 
def __get__ (self, instance, owner=None, at=None, label="default")
 
def __delete__ (self, instance, at=None, label='deletion')
 

Public Attributes

 keytype
 
 itemtype
 
 dictCheck
 
 itemCheck
 
 dtype
 
 doc
 
 deprecated
 
 default
 
 check
 
 optional
 
 source
 

Static Public Attributes

 DictClass = ConfigDict
 
 supportedTypes = set((str, bool, float, int, complex))
 

Detailed Description

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.

Definition at line 87 of file configDictField.py.

Constructor & Destructor Documentation

◆ __init__()

def lsst.pex.config.configDictField.ConfigDictField.__init__ (   self,
  doc,
  keytype,
  itemtype,
  default = None,
  optional = False,
  dictCheck = None,
  itemCheck = None,
  deprecated = None 
)

Definition at line 146 of file configDictField.py.

Member Function Documentation

◆ __delete__()

def lsst.pex.config.config.Field.__delete__ (   self,
  instance,
  at = None,
  label = 'deletion' 
)
inherited
Delete an attribute from a `lsst.pex.config.Config` instance.

Parameters
----------
instance : `lsst.pex.config.Config`
    The config instance that contains this field.
at : `list` of `lsst.pex.config.callStack.StackFrame`
    The call stack (created by
    `lsst.pex.config.callStack.getCallStack`).
label : `str`, optional
    Event label for the history.

Notes
-----
This is invoked by the owning `~lsst.pex.config.Config` object and
should not be called directly.

Definition at line 563 of file config.py.

◆ __get__()

def lsst.pex.config.config.Field.__get__ (   self,
  instance,
  owner = None,
  at = None,
  label = "default" 
)
inherited
Define how attribute access should occur on the Config instance
This is invoked by the owning config object and should not be called
directly

When the field attribute is accessed on a Config class object, it
returns the field object itself in order to allow inspection of
Config classes.

When the field attribute is access on a config instance, the actual
value described by the field (and held by the Config instance) is
returned.

Definition at line 488 of file config.py.

◆ __set__()

def lsst.pex.config.dictField.DictField.__set__ (   self,
  instance,
  value,
  at = None,
  label = "assignment" 
)
inherited

Definition at line 253 of file dictField.py.

◆ freeze()

def lsst.pex.config.configDictField.ConfigDictField.freeze (   self,
  instance 
)

Definition at line 207 of file configDictField.py.

◆ rename()

def lsst.pex.config.configDictField.ConfigDictField.rename (   self,
  instance 
)

Definition at line 166 of file configDictField.py.

◆ save()

def lsst.pex.config.configDictField.ConfigDictField.save (   self,
  outfile,
  instance 
)

Definition at line 195 of file configDictField.py.

◆ toDict()

def lsst.pex.config.configDictField.ConfigDictField.toDict (   self,
  instance 
)

Definition at line 184 of file configDictField.py.

◆ validate()

def lsst.pex.config.configDictField.ConfigDictField.validate (   self,
  instance 
)

Definition at line 173 of file configDictField.py.

Member Data Documentation

◆ check

lsst.pex.config.config.Field.check
inherited

Definition at line 305 of file config.py.

◆ default

lsst.pex.config.config.Field.default
inherited

Definition at line 301 of file config.py.

◆ deprecated

lsst.pex.config.config.Field.deprecated
inherited

Definition at line 292 of file config.py.

◆ dictCheck

lsst.pex.config.configDictField.ConfigDictField.dictCheck

Definition at line 163 of file configDictField.py.

◆ DictClass

lsst.pex.config.configDictField.ConfigDictField.DictClass = ConfigDict
static

Definition at line 143 of file configDictField.py.

◆ doc

lsst.pex.config.config.Field.doc
inherited

Definition at line 288 of file config.py.

◆ dtype

lsst.pex.config.config.Field.dtype
inherited

Definition at line 281 of file config.py.

◆ itemCheck

lsst.pex.config.configDictField.ConfigDictField.itemCheck

Definition at line 164 of file configDictField.py.

◆ itemtype

lsst.pex.config.configDictField.ConfigDictField.itemtype

Definition at line 162 of file configDictField.py.

◆ keytype

lsst.pex.config.configDictField.ConfigDictField.keytype

Definition at line 161 of file configDictField.py.

◆ optional

lsst.pex.config.config.Field.optional
inherited

Definition at line 309 of file config.py.

◆ source

lsst.pex.config.config.Field.source
inherited

Definition at line 316 of file config.py.

◆ supportedTypes

lsst.pex.config.config.Field.supportedTypes = set((str, bool, float, int, complex))
staticinherited

Definition at line 266 of file config.py.


The documentation for this class was generated from the following file: