Your IP : 3.22.130.228


Current Path : /opt/alt/python310/lib64/python3.10/__pycache__/
Upload File :
Current File : //opt/alt/python310/lib64/python3.10/__pycache__/contextlib.cpython-310.opt-2.pyc

o

6��fe�@s|	ddlZddlZddlZddlmZddlmZddlmZm	Z	gd�Z
Gdd�dej�ZGdd	�d	ej�Z
Gd
d�de�ZGdd
�d
e�ZGdd�d�ZGdd�deee�ZGdd�dee
e�Zdd�Zdd�ZGdd�de�ZGdd�de
�ZGdd�de�ZGdd�de�ZGd d!�d!e�ZGd"d#�d#e�ZGd$d%�d%�ZGd&d'�d'ee�ZGd(d)�d)ee
�ZGd*d+�d+ee
�ZdS),�N)�deque��wraps)�
MethodType�GenericAlias)
�asynccontextmanager�contextmanager�closing�nullcontext�AbstractContextManager�AbstractAsyncContextManager�AsyncExitStack�ContextDecorator�	ExitStack�redirect_stdout�redirect_stderr�suppress�aclosingc@�8eZdZ	ee�Zdd�Zejdd��Z	edd��Z
dS)rcC�	|S�N���selfrr�1/opt/alt/python310/lib64/python3.10/contextlib.py�	__enter__sz AbstractContextManager.__enter__cCs	dSrr�r�exc_type�	exc_value�	tracebackrrr�__exit__szAbstractContextManager.__exit__cC�|turt�|dd�StS)Nrr )r�_collections_abc�_check_methods�NotImplemented��cls�Crrr�__subclasshook__sz'AbstractContextManager.__subclasshook__N)�__name__�
__module__�__qualname__�classmethodr�__class_getitem__r�abc�abstractmethodr r(rrrrr�
rc@r)rc�s�	|Srrrrrr�
__aenter__+s�z&AbstractAsyncContextManager.__aenter__c�s�	dSrrrrrr�	__aexit__/s�z%AbstractAsyncContextManager.__aexit__cCr!)Nr1r2)rr"r#r$r%rrrr(4s
�z,AbstractAsyncContextManager.__subclasshook__N)r)r*r+r,rr-r1r.r/r2r(rrrrr%r0rc@�eZdZ	dd�Zdd�ZdS)rcCrrrrrrr�_recreate_cm?s	zContextDecorator._recreate_cmc�t����fdd��}|S)Ncs:�����|i|��Wd�S1swYdSr�r4��args�kwds��funcrrr�innerLs
$�z(ContextDecorator.__call__.<locals>.innerr�rr;r<rr:r�__call__K�zContextDecorator.__call__N�r)r*r+r4r>rrrrr<src@r3)�AsyncContextDecoratorcCrrrrrrrr4Vsz"AsyncContextDecorator._recreate_cmcr5)Nc	�sV����4IdH��|i|��IdHWd�IdHS1IdHs$wYdSrr6r7r:rrr<\s�0�z-AsyncContextDecorator.__call__.<locals>.innerrr=rr:rr>[r?zAsyncContextDecorator.__call__Nr@rrrrrASsrAc@r3)�_GeneratorContextManagerBasecCsN||i|��|_||||_|_|_t|dd�}|dur"t|�j}||_dS)N�__doc__)�genr;r8r9�getattr�typerC)rr;r8r9�docrrr�__init__fs

z%_GeneratorContextManagerBase.__init__cCs|�|j|j|j�Sr)�	__class__r;r8r9rrrrr4tsz)_GeneratorContextManagerBase._recreate_cmN)r)r*r+rHr4rrrrrBcsrBc@r3)�_GeneratorContextManagercCs2|`|`|`zt|j�WStytd�d�w�Nzgenerator didn't yield)r8r9r;�nextrD�
StopIteration�RuntimeErrorrrrrr�s
�z"_GeneratorContextManager.__enter__c
Cs|durz
t|j�Wtd��tyYdSw|dur |�}z
|j�|||�Wtd��tyC}z
||uWYd}~Sd}~wtyk}z||urUWYd}~dSt|t�rf|j|urfWYd}~dS�d}~wty�}z||urw�WYd}~dSd}~ww)NF�generator didn't stopz#generator didn't stop after throw())rLrDrMrN�throw�
isinstance�	__cause__�
BaseException�r�typ�valuer�excrrrr �s<�� ���
���z!_GeneratorContextManager.__exit__N)r)r*r+rr rrrrrJ{�	rJc@r3)�_AsyncGeneratorContextManagerc�s:�|`|`|`z	t|j�IdHWStytd�d�wrK)r8r9r;�anextrD�StopAsyncIterationrNrrrrr1�s�
�z(_AsyncGeneratorContextManager.__aenter__c
�s�|durz
t|j�IdHWtd��tyYdSw|dur$|�}z|j�|||�IdHWtd��tyJ}z
||uWYd}~Sd}~wtyt}z||ur\WYd}~dSt|ttf�ro|j|uroWYd}~dS�d}~wty�}z||ur��WYd}~dSd}~ww)NFrOz$generator didn't stop after athrow())	rZrDr[rN�athrowrQrMrRrSrTrrrr2�s>��� ���
���z'_AsyncGeneratorContextManager.__aexit__N)r)r*r+r1r2rrrrrY�rXrYc�	t���fdd��}|S)Nc�t�||�Sr)rJr7�r;rr�helper�zcontextmanager.<locals>.helperr�r;r`rr_rr��rcr])Ncr^r)rYr7r_rrr`8raz#asynccontextmanager.<locals>.helperrrbrr_rrrcrc@�&eZdZ	dd�Zdd�Zdd�ZdS)r	cC�
||_dSr��thing�rrgrrrrHO�
zclosing.__init__cC�|jSrrfrrrrrQ�zclosing.__enter__cGs|j��dSr)rg�close�r�exc_inforrrr Sszclosing.__exit__N�r)r*r+rHrr rrrrr	>s
r	c@rd)rcCrerrfrhrrrrHirizaclosing.__init__c���|jSrrfrrrrr1k��zaclosing.__aenter__c�s�|j��IdHdSr)rg�aclosermrrrr2ms�zaclosing.__aexit__N)r)r*r+rHr1r2rrrrrWs
rc@s(eZdZdZdd�Zdd�Zdd�ZdS)�_RedirectStreamNcCs||_g|_dSr)�_new_target�_old_targets)r�
new_targetrrrrHus
z_RedirectStream.__init__cCs*|j�tt|j��tt|j|j�|jSr)ru�appendrE�sys�_stream�setattrrtrrrrrzsz_RedirectStream.__enter__cCstt|j|j���dSr)rzrxryru�pop�r�exctype�excinst�exctbrrrr sz_RedirectStream.__exit__)r)r*r+ryrHrr rrrrrsqs
rsc@�eZdZ	dZdS)r�stdoutN�r)r*r+ryrrrrr�src@r�)r�stderrNr�rrrrr�src@rd)rcGrer)�_exceptions)r�
exceptionsrrrrH�rizsuppress.__init__cC�dSrrrrrrr��zsuppress.__enter__cCs|duo	t||j�Sr)�
issubclassr�r|rrrr �s
zsuppress.__exit__Nrorrrrr�s

rc@s`eZdZ	edd��Zedd��Zdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dd�Zddd�ZdS)�_BaseExitStackcC�
t||�Sr�r��cm�cm_exitrrr�_create_exit_wrapper��
z#_BaseExitStack._create_exit_wrapperc����fdd�}|S)Ncs��i���dSrr�rrW�tb�r8�callbackr9rr�
_exit_wrapper�sz8_BaseExitStack._create_cb_wrapper.<locals>._exit_wrapperr�r�r8r9r�rr�r�_create_cb_wrapper��z!_BaseExitStack._create_cb_wrappercCst�|_dSr)r�_exit_callbacksrrrrrH�sz_BaseExitStack.__init__cCs 	t|��}|j|_t�|_|Sr)rFr�r)r�	new_stackrrr�pop_all�s

z_BaseExitStack.pop_allcCsD	t|�}z|j}Wnty|�|�Y|Sw|�||�|Sr)rFr �AttributeError�_push_exit_callback�
_push_cm_exit�r�exit�_cb_type�exit_methodrrr�push�s
�z_BaseExitStack.pushcCs*	t|�}|j}|�|�}|�||�|Sr)rFr rr��rr��_cm_type�_exit�resultrrr�
enter_context�s
z_BaseExitStack.enter_contextcOs.	|j|g|�Ri|��}||_|�|�|Sr)r��__wrapped__r��rr�r8r9r�rrrr��s

z_BaseExitStack.callbackcC�	|�||�}|�|d�dS)NT)r�r��rr�r�r�rrrr��sz_BaseExitStack._push_cm_exitTcCs|j�||f�dSr)r�rw)rr��is_syncrrrr�sz"_BaseExitStack._push_exit_callbackN)T)
r)r*r+�staticmethodr�r�rHr�r�r�r�r�r�rrrrr��s


r�c@rd)rcCs|Srrrrrrrr�zExitStack.__enter__c
s�|ddu}t��d��fdd�}d}d}|jrE|j��\}}z||�r+d}d}d}Wnt��}||d|d�d}|}Y|js|r^z	|dj}	|d�ty]|	|d_�w|oa|S)Nr�c�6	|j}|dus||urdS|�urn|}q||_dSr��__context__��new_exc�old_exc�exc_context��	frame_excrr�_fix_exception_context��

z2ExitStack.__exit__.<locals>._fix_exception_contextFT�NNN�rxrnr�r{r�rS)
r�exc_details�received_excr��suppressed_exc�
pending_raiser��cb�new_exc_details�	fixed_ctxrr�rr s8��

�zExitStack.__exit__cCs	|�ddd�dSr)r rrrrrlFszExitStack.closeN)r)r*r+rr rlrrrrrs

1rc@s^eZdZ	edd��Zedd��Zdd�Zdd�Zd	d
�Zdd�Z	d
d�Z
dd�Zdd�ZdS)r
cCr�rr�r�rrr�_create_async_exit_wrapperYr�z)AsyncExitStack._create_async_exit_wrappercr�)Nc�s���i���IdHdSrrr�r�rrr�_s�z>AsyncExitStack._create_async_cb_wrapper.<locals>._exit_wrapperrr�rr�r�_create_async_cb_wrapper]r�z'AsyncExitStack._create_async_cb_wrapperc�s2�	t|�}|j}|�|�IdH}|�||�|Sr)rFr2r1�_push_async_cm_exitr�rrr�enter_async_contextcs�z"AsyncExitStack.enter_async_contextcCsF	t|�}z|j}Wnty|�|d�Y|Sw|�||�|S�NF)rFr2r�r�r�r�rrr�push_async_exitos
�zAsyncExitStack.push_async_exitcOs0	|j|g|�Ri|��}||_|�|d�|Sr�)r�r�r�r�rrr�push_async_callback�s
z"AsyncExitStack.push_async_callbackc�s�	|�ddd�IdHdSr)r2rrrrrr�s�zAsyncExitStack.aclosecCr�r�)r�r�r�rrrr��sz"AsyncExitStack._push_async_cm_exitc�s�|Srrrrrrr1���zAsyncExitStack.__aenter__c�s��|ddu}t��d��fdd�}d}d}|jrR|j��\}}z|r)||�}n||�IdH}|r8d}d}d}Wnt��}	||	d|d�d}|	}Y|js|rkz	|dj}
|d�tyj|
|d_�w|on|S)Nrr�cr�rr�r�r�rrr��r�z8AsyncExitStack.__aexit__.<locals>._fix_exception_contextFTr�r�)rr�r�r�r�r�r�r��cb_suppressr�r�rr�rr2�s@�
��

�zAsyncExitStack.__aexit__N)
r)r*r+r�r�r�r�r�r�rrr�r1r2rrrrr
Ls


r
c@s8eZdZ	ddd�Zdd�Zdd�Zdd	�Zd
d�ZdS)
r
NcCrer��enter_result)rr�rrrrH�riznullcontext.__init__cCrjrr�rrrrr�rkznullcontext.__enter__cGr�rr�r�excinforrrr �r�znullcontext.__exit__c�rprr�rrrrr1�rqznullcontext.__aenter__c�s�dSrrr�rrrr2�r�znullcontext.__aexit__r)r)r*r+rHrr r1r2rrrrr
�s

r
) r.rxr"�collectionsr�	functoolsr�typesrr�__all__�ABCrr�objectrrArBrJrYrrr	rrsrrrr�rr
r
rrrr�<module>sH
�
@�A!!PE

?>