MOON
Server: Apache
System: Linux server30c.hostingraja.org 3.10.0-962.3.2.lve1.5.63.el7.x86_64 #1 SMP Fri Oct 8 12:03:35 UTC 2021 x86_64
User: jibhires (1887)
PHP: 8.1.30
Disabled: show_source, system, shell_exec, passthru, exec, popen, proc_open, allow_url_fopen, symlink, escapeshellcmd, pcntl_exec
Upload Files
File: //opt/alt/python35/lib64/python3.5/site-packages/aiohttp/__pycache__/locks.cpython-35.opt-1.pyc


���Z��@s/ddlZddlZGdd�d�ZdS)�Nc@sIeZdZdZdd�Zddd�Zdd�Zd	d
�ZdS)�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.
    cCs:||_d|_tjd|�|_tj�|_dS)N�loop)�_loop�_exc�asyncio�Event�_event�collections�deque�_waiters)�selfr�r
�	/locks.py�__init__s		zEventResultOrError.__init__NcCs||_|jj�dS)N)rr�set)r�excr
r
rrs	zEventResultOrError.setc�sj|jj|jj��}|jj|�z|IdH}Wd|jj|�X|jdk	rf|j�|S)N)rZcreate_taskr�waitr�append�remover)r�waiter�valr
r
rrs	zEventResultOrError.waitcCs"x|jD]}|j�q
WdS)z Cancel all waiters N)r�cancel)rrr
r
rr#szEventResultOrError.cancel)�__name__�
__module__�__qualname__�__doc__rrrrr
r
r
rrs

r)rr	rr
r
r
r�<module>s