MCPcopy Index your code
hub / github.com/LabPy/lantz / __new__

Method __new__

lantz/driver.py:220–254  ·  view source on GitHub ↗
(cls, *args, **kwargs)

Source from the content-addressed store, hash-verified

218 __name = ''
219
220 def __new__(cls, *args, **kwargs):
221 inst = SuperQObject.__new__(cls)
222 name = kwargs.pop('name', None)
223
224 inst._executor = None
225 inst._lock = threading.RLock()
226 inst.__unfinished_tasks = 0
227 inst.timing = RunningStats()
228
229 if hasattr(inst, 'name') and inst.name:
230 pass
231 elif name:
232 inst.name = name
233 else:
234 inst.name = '{}{:d}'.format(cls.__name__, _REGISTERED[cls.__name__])
235 _REGISTERED[cls.__name__] += 1
236
237 inst.log_extra = {'lantz_driver': cls.__name__,
238 'lantz_name': inst.name}
239
240 for feat_name, feat in cls._lantz_features.items():
241
242 for attr_name, attr_value in feat.modifiers[MISSING][MISSING].items():
243 if not isinstance(attr_value, Self):
244 continue
245 getattr(inst, attr_value.item + '_changed').connect(_set(inst, feat_name, attr_name))
246 if attr_value.default is MISSING:
247 feat.get_processors[MISSING][MISSING] = (_raise_must_change(attr_value.item, feat_name, 'get'), )
248 feat.set_processors[MISSING][MISSING] = (_raise_must_change(attr_value.item, feat_name, 'set'), )
249 else:
250 feat.modifiers[MISSING][MISSING][attr_name] = attr_value.default
251 feat.rebuild(build_doc=False, store=True)
252
253 inst.log_info('Created ' + inst.name)
254 return inst
255
256 @property
257 def name(self):

Callers 1

__new__Method · 0.45

Calls 7

RunningStatsClass · 0.85
_raise_must_changeFunction · 0.85
log_infoMethod · 0.80
_setFunction · 0.70
itemsMethod · 0.45
connectMethod · 0.45
rebuildMethod · 0.45

Tested by

no test coverage detected