HEX
Server: Apache/2.4.65 (Unix) OpenSSL/1.1.1k
System: Linux vps109042.inmotionhosting.com 4.18.0 #1 SMP Mon Sep 30 15:36:27 MSK 2024 x86_64
User: cisa (1010)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: //opt/imh-python/lib/python3.9/asyncio/__pycache__/futures.cpython-39.opt-2.pyc
a

b�h�6�@s�dZddlZddlZddlZddlZddlmZddlmZddlm	Z	ddlm
Z
ejZejZej
Z
ejZejdZGdd	�d	�ZeZd
d�Zdd
�Zdd�Zdd�Zdd�Zdd�Zdd�dd�ZzddlZWney�Yn0ejZZdS))�Future�wrap_future�isfuture�N�)�base_futures)�events)�
exceptions)�format_helpersc@s�eZdZeZdZdZdZdZdZ	dZ
dZdZdd�dd�Z
ejZdd�Zdd	�Zd
d�Zedd
��Zejdd
��Zdd�Zdd�Zd*dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�d d!�Zd"d#�Z d$d%�Z!d&d'�Z"d(d)�Z#e#Z$dS)+rNF��loopcCs@|durt��|_n||_g|_|j��r<t�t�d��|_	dS)Nr)
r�get_event_loop�_loop�
_callbacksZ	get_debugr	�
extract_stack�sys�	_getframe�_source_traceback��selfr�r�0/opt/imh-python/lib/python3.9/asyncio/futures.py�__init__Gs
�zFuture.__init__cCsd�|jjd�|����S)Nz<{} {}>� )�format�	__class__�__name__�join�
_repr_info�rrrr�__repr__Ys
�zFuture.__repr__cCsF|js
dS|j}|jj�d�||d�}|jr6|j|d<|j�|�dS)Nz exception was never retrieved)�message�	exception�futureZsource_traceback)�_Future__log_traceback�
_exceptionrrrr
Zcall_exception_handler)r�exc�contextrrr�__del__]s�
zFuture.__del__cCs|S�Nr)�cls�typerrr�__class_getitem__mszFuture.__class_getitem__cCs|jSr()r#rrrr�_log_tracebackpszFuture._log_tracebackcCst|�rtd��d|_dS)Nz'_log_traceback can only be set to FalseF)�bool�
ValueErrorr#)r�valrrrr,tscCs|j}|durtd��|S)Nz!Future object is not initialized.)r
�RuntimeErrorrrrr�get_loopzszFuture.get_loopcCs2|jdurt��}nt�|j�}|j|_d|_|Sr()�_cancel_messager�CancelledError�_cancelled_exc�__context__�rr%rrr�_make_cancelled_error�s

zFuture._make_cancelled_errorcCs,d|_|jtkrdSt|_||_|��dS)NFT)r#�_state�_PENDING�
_CANCELLEDr2�_Future__schedule_callbacks)r�msgrrr�cancel�s
z
Future.cancelcCsH|jdd�}|sdSg|jdd�<|D]\}}|jj|||d�q(dS�N�r&)rr
�	call_soon)rZ	callbacks�callback�ctxrrrZ__schedule_callbacks�szFuture.__schedule_callbackscCs
|jtkSr()r8r:rrrr�	cancelled�szFuture.cancelledcCs
|jtkSr()r8r9rrrr�done�szFuture.donecCsF|jtkr|��}|�|jtkr*t�d��d|_|jdur@|j�|jS)NzResult is not ready.F)	r8r:r7�	_FINISHEDr�InvalidStateErrorr#r$�_resultr6rrr�result�s



z
Future.resultcCs6|jtkr|��}|�|jtkr*t�d��d|_|jS)NzException is not set.F)r8r:r7rErrFr#r$r6rrrr!�s


zFuture.exceptionr?cCsB|jtkr|jj|||d�n |dur.t��}|j�||f�dSr>)r8r9r
r@�contextvarsZcopy_contextr�append)r�fnr&rrr�add_done_callback�s

zFuture.add_done_callbackcs<�fdd�|jD�}t|j�t|�}|r8||jdd�<|S)Ncs g|]\}}|�kr||f�qSrr)�.0�frB�rKrr�
<listcomp>�s�z/Future.remove_done_callback.<locals>.<listcomp>)r�len)rrKZfiltered_callbacksZ
removed_countrrOr�remove_done_callback�s
�zFuture.remove_done_callbackcCs8|jtkr t�|j�d|����||_t|_|��dS)N�: )r8r9rrFrGrEr;)rrHrrr�
set_result�s

zFuture.set_resultcCsb|jtkr t�|j�d|����t|t�r0|�}t|�turDtd��||_t	|_|�
�d|_dS)NrSzPStopIteration interacts badly with generators and cannot be raised into a FutureT)r8r9rrF�
isinstancer*�
StopIteration�	TypeErrorr$rEr;r#)rr!rrr�
set_exceptions

zFuture.set_exceptionccs,|��sd|_|V|��s$td��|��S)NTzawait wasn't used with future)rD�_asyncio_future_blockingr0rHrrrr�	__await__szFuture.__await__)N)%r�
__module__�__qualname__r9r8rGr$r
rr2r4rYr#rrZ_future_repr_inforrr'r+�propertyr,�setterr1r7r=r;rCrDrHr!rLrRrTrXrZ�__iter__rrrrrs@


rcCs*z
|j}WntyYn0|�S|jSr()r1�AttributeErrorr
)�futr1rrr�	_get_loop(s
rbcCs|��rdS|�|�dSr()rCrT)rarHrrr�_set_result_unless_cancelled4srccCsXt|�}|tjjur tj|j�S|tjjur8tj|j�S|tjjurPtj|j�S|SdSr()r*�
concurrent�futuresr3r�args�TimeoutErrorrF)r%Z	exc_classrrr�_convert_future_exc;srhcCsR|��r|��|��sdS|��}|dur<|�t|��n|��}|�|�dSr()rCr=�set_running_or_notify_cancelr!rXrhrHrT)rd�sourcer!rHrrr�_set_concurrent_future_stateGsrkcCsT|��rdS|��r|��n2|��}|dur>|�t|��n|��}|�|�dSr()rCr=r!rXrhrHrT)rj�destr!rHrrr�_copy_future_stateVs
rmcs�t��st�tjj�std��t��s<t�tjj�s<td��t��rLt��nd�t��r`t��nd�dd�����fdd�}����fdd�}��|���|�dS)	Nz(A future is required for source argumentz-A future is required for destination argumentcSs"t|�rt||�n
t||�dSr()rrmrk)r"�otherrrr�
_set_statezsz!_chain_future.<locals>._set_statecs2|��r.�dus��ur"���n���j�dSr()rCr=�call_soon_threadsafe)�destination)�	dest_looprj�source_looprr�_call_check_cancel�s
z)_chain_future.<locals>._call_check_cancelcsJ���r�dur���rdS�dus,��ur8��|�n����|�dSr()rCZ	is_closedrp)rj)rorrrqrsrr�_call_set_state�s��z&_chain_future.<locals>._call_set_state)rrUrdrerrWrbrL)rjrqrtrur)rorrrqrjrsr�
_chain_futurejs��	
rvr
cCs2t|�r|S|durt��}|��}t||�|Sr()rrrZ
create_futurerv)r"rZ
new_futurerrrr�s
r)�__all__�concurrent.futuresrdrI�loggingr�rrrr	rr9r:rE�DEBUGZSTACK_DEBUGrZ	_PyFuturerbrcrhrkrmrvrZ_asyncio�ImportErrorZ_CFuturerrrr�<module>s:

*