INNER CODE UNIT · Python
_SyntheticMeta
mongodb/mongo-c-driver · lldb_bson.py:161
class _SyntheticMeta(type):
"""
Metaclass that handles subclassing of SyntheticDisplayBase. Does basic checks
and collects definitions into a list of display types
"""
synthetics: list[Type[SyntheticDisplayBase[Any]]] = []
'The display type classes that have been defined'
@override
def __new__(
cls: Type[_SyntheticMeta], name: str, bases: tuple[type, ...], namespace: dict[str, Any]
) -> Type[SyntheticDisplayBase[Any]]:
new_class: Type[SyntheticDisplayBase[Any]] = type.__new__(cast(type, cls), name, bases, namespace)
if namespace.get('__abstract__'):
return new_class
# Check for the required __typename__ and __parse__
if not hasattr(new_class, '__typename__'):