MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / add_class

Method add_class

lib/sqlalchemy/orm/clsregistry.py:307–323  ·  view source on GitHub ↗
(self, name: str, cls: Type[Any])

Source from the content-addressed store, hash-verified

305 return marker
306
307 def add_class(self, name: str, cls: Type[Any]) -> None:
308 if name in self.contents:
309 existing = cast(_MultipleClassMarker, self.contents[name])
310 try:
311 existing.add_item(cls)
312 except AttributeError as ae:
313 if not isinstance(existing, _MultipleClassMarker):
314 raise exc.InvalidRequestError(
315 f'name "{name}" matches both a '
316 "class name and a module name"
317 ) from ae
318 else:
319 raise
320 else:
321 self.contents[name] = _MultipleClassMarker(
322 [cls], on_remove=lambda: self._remove_item(name)
323 )
324
325 def remove_class(self, name: str, cls: Type[Any]) -> None:
326 if name in self.contents:

Callers 1

_add_classFunction · 0.80

Calls 4

_remove_itemMethod · 0.95
add_itemMethod · 0.80
castFunction · 0.50

Tested by

no test coverage detected