diff options
author | Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com> | 2022-01-22 12:52:24 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-22 12:52:24 (GMT) |
commit | 6ed874f8c59cc6c01d9663bad2f4bed8dc1c6109 (patch) | |
tree | f54b8e3eb6d733f4d8d6d956e8b5a98c796e8620 /Lib/asyncio | |
parent | 3c4a3745b900e748f99e80fc3728b534e857d1ff (diff) | |
download | cpython-6ed874f8c59cc6c01d9663bad2f4bed8dc1c6109.zip cpython-6ed874f8c59cc6c01d9663bad2f4bed8dc1c6109.tar.gz cpython-6ed874f8c59cc6c01d9663bad2f4bed8dc1c6109.tar.bz2 |
[3.9] bpo-46469: Make asyncio generic classes return GenericAlias (GH-30777) (GH-30785)
Automerge-Triggered-By: GH:asvetlov
Diffstat (limited to 'Lib/asyncio')
-rw-r--r-- | Lib/asyncio/futures.py | 4 | ||||
-rw-r--r-- | Lib/asyncio/queues.py | 4 | ||||
-rw-r--r-- | Lib/asyncio/tasks.py | 4 |
3 files changed, 6 insertions, 6 deletions
diff --git a/Lib/asyncio/futures.py b/Lib/asyncio/futures.py index bed4da5..aaab09c 100644 --- a/Lib/asyncio/futures.py +++ b/Lib/asyncio/futures.py @@ -8,6 +8,7 @@ import concurrent.futures import contextvars import logging import sys +from types import GenericAlias from . import base_futures from . import events @@ -106,8 +107,7 @@ class Future: context['source_traceback'] = self._source_traceback self._loop.call_exception_handler(context) - def __class_getitem__(cls, type): - return cls + __class_getitem__ = classmethod(GenericAlias) @property def _log_traceback(self): diff --git a/Lib/asyncio/queues.py b/Lib/asyncio/queues.py index cd3f7c6..14ae87e 100644 --- a/Lib/asyncio/queues.py +++ b/Lib/asyncio/queues.py @@ -3,6 +3,7 @@ __all__ = ('Queue', 'PriorityQueue', 'LifoQueue', 'QueueFull', 'QueueEmpty') import collections import heapq import warnings +from types import GenericAlias from . import events from . import locks @@ -76,8 +77,7 @@ class Queue: def __str__(self): return f'<{type(self).__name__} {self._format()}>' - def __class_getitem__(cls, type): - return cls + __class_getitem__ = classmethod(GenericAlias) def _format(self): result = f'maxsize={self._maxsize!r}' diff --git a/Lib/asyncio/tasks.py b/Lib/asyncio/tasks.py index 27a3c8c..39bd068 100644 --- a/Lib/asyncio/tasks.py +++ b/Lib/asyncio/tasks.py @@ -17,6 +17,7 @@ import itertools import types import warnings import weakref +from types import GenericAlias from . import base_tasks from . import coroutines @@ -147,8 +148,7 @@ class Task(futures._PyFuture): # Inherit Python Task implementation self._loop.call_exception_handler(context) super().__del__() - def __class_getitem__(cls, type): - return cls + __class_getitem__ = classmethod(GenericAlias) def _repr_info(self): return base_tasks._task_repr_info(self) |