ok

Mini Shell

Direktori : /opt/alt/python38/lib64/python3.8/site-packages/aiohttp/__pycache__/
Upload File :
Current File : //opt/alt/python38/lib64/python3.8/site-packages/aiohttp/__pycache__/locks.cpython-38.pyc

U

'�7`��@sdddlZddlZddlmZmZzddlmZWn ek
rPddlmZYnXGdd�d�ZdS)�N)�Any�Optional)�Dequec@sTeZdZdZejdd�dd�Zdeedd�dd�Z	e
d	�d
d�Zdd	�dd
�ZdS)�EventResultOrErrorz�
    This class wrappers the Event asyncio lock allowing either awake the
    locked Tasks without any error or raising an exception.

    thanks to @vorpalsmith for the simple design.
    N)�loop�returncCs$||_d|_t��|_t��|_dS�N)�_loop�_exc�asyncioZEvent�_event�collections�deque�_waiters)�selfr�r�@/opt/alt/python38/lib64/python3.8/site-packages/aiohttp/locks.py�__init__s
zEventResultOrError.__init__)�excrcCs||_|j��dSr)r
r�set)rrrrrrszEventResultOrError.set)rc	�sP|j�|j���}|j�|�z|IdH}W5|j�|�X|jdk	rL|j�|Sr)r	Zcreate_taskr�waitr�append�remover
)r�waiter�valrrrrs
zEventResultOrError.waitcCs|jD]}|��qdS)z Cancel all waiters N)r�cancel)rrrrrr*s
zEventResultOrError.cancel)N)
�__name__�
__module__�__qualname__�__doc__rZAbstractEventLooprr�
BaseExceptionrrrrrrrrrs

r)	rr
�typingrrr�ImportErrorZtyping_extensionsrrrrr�<module>s

Zerion Mini Shell 1.0