File: //lib64/python3.6/unittest/__pycache__/signals.cpython-36.opt-2.pyc
3
  \c	  �               @   sb   d dl Z d dlZd dlmZ dZG dd� de�Zej� Zdd� Z	dd	� Z
dad
d� Zddd
�Z
dS )�    N)�wrapsTc               @   s   e Zd Zdd� Zdd� ZdS )�_InterruptHandlerc             C   sN   d| _ || _t|t�rD|tjkr(tj}n|tjkr<dd� }ntd��|| _	d S )NFc             S   s   d S )N� )Z
unused_signumZunused_framer   r   �(/usr/lib64/python3.6/unittest/signals.py�default_handler   s    z3_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   )�selfr   r   r   r   �__init__
   s    
z_InterruptHandler.__init__c             C   sV   t jt j�}|| k	r | j||� | jr2| j||� d| _xtj� D ]}|j�  qBW d S )NT)r   �	getsignal�SIGINTr   r   �_results�keys�stop)r   Zsignum�frameZinstalled_handler�resultr   r   r   �__call__   s    z_InterruptHandler.__call__N)�__name__�
__module__�__qualname__r   r   r   r   r   r   r   	   s   r   c             C   s   dt | <