The Gaudi Framework  v37r0 (b608885e)
GaudiConfig2._configurables.ConfigurableMeta Class Reference
Inheritance diagram for GaudiConfig2._configurables.ConfigurableMeta:
Collaboration diagram for GaudiConfig2._configurables.ConfigurableMeta:

Public Member Functions

def __new__ (cls, name, bases, namespace, **kwds)
 

Detailed Description

Metaclass for Configurables.

Definition at line 87 of file _configurables.py.

Member Function Documentation

◆ __new__()

def GaudiConfig2._configurables.ConfigurableMeta.__new__ (   cls,
  name,
  bases,
  namespace,
**  kwds 
)

Definition at line 92 of file _configurables.py.

92  def __new__(cls, name, bases, namespace, **kwds):
93  props = {
94  key: namespace[key]
95  for key in namespace
96  if isinstance(namespace[key], Property)
97  }
98  if props:
99  doc = namespace.get("__doc__", "").rstrip()
100  doc += "\n\nProperties\n----------\n"
101  doc += "\n".join(
102  [
103  "- {name}: {p.cpp_type} ({p.default!r})\n {p.__doc__}\n".format(
104  name=n, p=props[n]
105  )
106  for n in props
107  ]
108  )
109  namespace["__doc__"] = doc
110  namespace["_descriptors"] = props
111  slots = set(namespace.get("__slots__", []))
112  slots.update(["_properties", "_name"])
113  namespace["__slots__"] = tuple(slots)
114  result = type.__new__(cls, name, bases, namespace)
115  return result
116 
117 

The documentation for this class was generated from the following file:
format
GAUDI_API std::string format(const char *,...)
MsgStream format utility "a la sprintf(...)".
Definition: MsgStream.cpp:119