Viewing File: /opt/alt/python35/lib64/python3.5/site-packages/aiohttp/__pycache__/locks.cpython-35.opt-1.pyc
Z @ s/ d d l Z d d l Z Gd d d Z d S) Nc @ sI e Z d Z d Z d d Z d d d Z d d Z d d
Z d S)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.
c C s: | | _ d | _ t j d | | _ t j | _ d S)Nloop)_loop_excasyncioEvent_eventcollectionsdeque_waiters)selfr r
/locks.py__init__ s zEventResultOrError.__init__Nc C s | | _ | j j d S)N)r r set)r excr
r
r r s zEventResultOrError.setc sj | j j | j j } | j j | z | Id H} Wd | j j | X| j d k rf | j | S)N)r Zcreate_taskr waitr appendremover )r waitervalr
r
r r s zEventResultOrError.waitc C s"