- Method resolution order:
- TypeLike
- typing.Protocol
- typing.Generic
- builtins.object
Methods defined here:
- __annotate_func__ = __annotate__(format, /)
- # noinspection SpellCheckingInspection
- __init__ = _no_init_or_replace_init(self, *args, **kwargs)
Class methods defined here:
- __subclasshook__ = _proto_hook(other) from typing._ProtocolMeta
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations_cache__ = {'__all__': list[str] | None, '__author__': str | None, '__bases__': list[typing.Any] | None, '__credits__': str | None, ...}
- __firstlineno__ = 11
- __parameters__ = ()
- __protocol_attrs__ = {'__all__', '__author__', '__bases__', '__credits__', '__date__', '__file__', ...}
- __static_attributes__ = ()
Class methods inherited from typing.Protocol:
- __init_subclass__(*args, **kwargs) from typing._ProtocolMeta
Class methods inherited from typing.Generic:
- __class_getitem__(...) from typing._ProtocolMeta
- Parameterizes a generic class.
At least, parameterizing a generic class is the *main* thing this
method does. For example, for some generic class `Foo`, this is called
when we do `Foo[int]` - there, with `cls=Foo` and `params=int`.
However, note that this method is also called when defining generic
classes in the first place with `class Foo[T]: ...`.