HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //snap/core20/2599/usr/lib/python3.8/unittest/__pycache__/signals.cpython-38.pyc
U

���gc	�@sbddlZddlZddlmZdZGdd�de�Ze��Zdd�Z	dd	�Z
dad
d�Zddd
�Z
dS)�N)�wrapsTc@seZdZdd�Zdd�ZdS)�_InterruptHandlercCsNd|_||_t|t�rD|tjkr(tj}n|tjkr<dd�}ntd��||_	dS)NFcSsdS�N�)Z
unused_signumZunused_framerr�&/usr/lib/python3.8/unittest/signals.py�default_handlersz3_InterruptHandler.__init__.<locals>.default_handlerzYexpected SIGINT signal handler to be signal.SIG_IGN, signal.SIG_DFL, or a callable object)
�called�original_handler�
isinstance�int�signal�SIG_DFL�default_int_handler�SIG_IGN�	TypeErrorr)�selfrrrr�__init__
s



z_InterruptHandler.__init__cCsRt�tj�}||k	r |�||�|jr2|�||�d|_t��D]}|��q@dS)NT)r�	getsignal�SIGINTrr�_results�keys�stop)rZsignum�frameZinstalled_handler�resultrrr�__call__sz_InterruptHandler.__call__N)�__name__�
__module__�__qualname__rrrrrrr	srcCsdt|<dS)N�)r�rrrr�registerResult*sr cCstt�|d��Sr)�boolr�poprrrr�removeResult-sr#cCs.tdkr*t�tj�}t|�at�tjt�dSr)�_interrupt_handlerrrrr)rrrr�installHandler1sr%cs<�dk	r t���fdd��}|Stdk	r8t�tjtj�dS)Nc
s6t�tj�}t�z�||�W�St�tj|�XdSr)rrr�
removeHandler)�args�kwargs�initial��methodrr�inner;s
zremoveHandler.<locals>.inner)rr$rrr	)r+r,rr*rr&9sr&)N)r�weakref�	functoolsrZ
__unittest�objectr�WeakKeyDictionaryrr r#r$r%r&rrrr�<module>s