LSSTApplications  19.0.0-14-gb0260a2+2d714fc2ef,20.0.0+34a42eae2c,20.0.0+76f397ef0c,20.0.0+8558dd3f48,20.0.0+a6b6977b51,20.0.0+b2ea66fa67,20.0.0+cc669a8b45,20.0.0+d561663fb5,20.0.0+d778e99126,20.0.0+efe67588cf,20.0.0+f45b7d88f4,20.0.0+f7c597f720,20.0.0+fb43bee9b9,20.0.0+fb4d547e0d,20.0.0-1-g10df615+d8b88ec1b5,20.0.0-1-g253301a+a6b6977b51,20.0.0-1-g498fb60+ff88705a28,20.0.0-1-g4d801e7+ce0d01dabd,20.0.0-1-g5b95a8c+24eaf908b3,20.0.0-1-g8a53f90+2817c06967,20.0.0-1-gc96f8cb+fb4d547e0d,20.0.0-1-gd1c87d7+2817c06967,20.0.0-1-gdb27ee5+abab67204f,20.0.0-13-ge998c5c+9f8c516ffa,20.0.0-18-g08fba245+88079d2923,20.0.0-2-gec03fae+fb98bf9d97,20.0.0-3-gdd5c15c+a61313b210,20.0.0-34-gdb4d86a+b43b2c05ff,20.0.0-4-g4a2362f+f45b7d88f4,20.0.0-4-gfea843c+f45b7d88f4,20.0.0-5-gac0d578b1+a8c4e2ada3,20.0.0-5-gfcebe35+cfceff6a24,20.0.0-6-g01203fff+e332440eaf,20.0.0-8-gea2affd+48c001ce3c,20.0.0-9-gabd0d4c+abab67204f,20.0.0-9-gf3ab18e+fb4d547e0d,w.2020.33
LSSTDataManagementBasePackage
Public Member Functions | List of all members
pex.config.config.ConfigMeta Class Reference
Inheritance diagram for pex.config.config.ConfigMeta:
pex.config.config.Config

Public Member Functions

def __init__ (cls, name, bases, dict_)
 
def __setattr__ (cls, name, value)
 

Detailed Description

A metaclass for `lsst.pex.config.Config`.

Notes
-----
``ConfigMeta`` adds a dictionary containing all `~lsst.pex.config.Field`
class attributes as a class attribute called ``_fields``, and adds
the name of each field as an instance variable of the field itself (so you
don't have to pass the name of the field to the field constructor).

Definition at line 105 of file config.py.

Constructor & Destructor Documentation

◆ __init__()

def pex.config.config.ConfigMeta.__init__ (   cls,
  name,
  bases,
  dict_ 
)

Definition at line 116 of file config.py.

116  def __init__(cls, name, bases, dict_):
117  type.__init__(cls, name, bases, dict_)
118  cls._fields = {}
119  cls._source = getStackFrame()
120 
121  def getFields(classtype):
122  fields = {}
123  bases = list(classtype.__bases__)
124  bases.reverse()
125  for b in bases:
126  fields.update(getFields(b))
127 
128  for k, v in classtype.__dict__.items():
129  if isinstance(v, Field):
130  fields[k] = v
131  return fields
132 
133  fields = getFields(cls)
134  for k, v in fields.items():
135  setattr(cls, k, copy.deepcopy(v))
136 

Member Function Documentation

◆ __setattr__()

def pex.config.config.ConfigMeta.__setattr__ (   cls,
  name,
  value 
)

Definition at line 137 of file config.py.

137  def __setattr__(cls, name, value):
138  if isinstance(value, Field):
139  value.name = name
140  cls._fields[name] = value
141  type.__setattr__(cls, name, value)
142 
143 

The documentation for this class was generated from the following file:
pex.config.callStack.getStackFrame
def getStackFrame(relative=0)
Definition: callStack.py:58
list
daf::base::PropertyList * list
Definition: fits.cc:913