typing.py 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. class _Placeholder:
  2. def __init__(self, *args, **kwargs):
  3. pass
  4. def __getitem__(self, *args):
  5. return self
  6. def __call__(self, *args, **kwargs):
  7. return self
  8. def __and__(self, other):
  9. return self
  10. def __or__(self, other):
  11. return self
  12. def __xor__(self, other):
  13. return self
  14. _PLACEHOLDER = _Placeholder()
  15. Sequence = _PLACEHOLDER
  16. List = _PLACEHOLDER
  17. Dict = _PLACEHOLDER
  18. Tuple = _PLACEHOLDER
  19. Set = _PLACEHOLDER
  20. Any = _PLACEHOLDER
  21. Union = _PLACEHOLDER
  22. Optional = _PLACEHOLDER
  23. Callable = _PLACEHOLDER
  24. Type = _PLACEHOLDER
  25. TypeAlias = _PLACEHOLDER
  26. NewType = _PLACEHOLDER
  27. Literal = _PLACEHOLDER
  28. LiteralString = _PLACEHOLDER
  29. Iterable = _PLACEHOLDER
  30. Generator = _PLACEHOLDER
  31. Iterator = _PLACEHOLDER
  32. Hashable = _PLACEHOLDER
  33. TypeVar = _PLACEHOLDER
  34. Self = _PLACEHOLDER
  35. Protocol = object
  36. Generic = object
  37. Never = object
  38. TYPE_CHECKING = False
  39. # decorators
  40. overload = lambda x: x
  41. final = lambda x: x
  42. # exhaustiveness checking
  43. assert_never = lambda x: x
  44. TypedDict = dict