B
    <™cK  ã               @   s
  d dl Z d dl T d dlmZ d dlmZ eƒ Ze 	de
dd„ ¡ e 	de
d	d„ ¡ d
ekrle 	de
dd„ ¡ dd„ Zdd„ Zee jƒdd„ ƒZee jƒdd„ ƒZd
ekrÄee jƒdd
„ ƒZe jje_dekrÞee jƒdd„ ƒZdekree jƒdd„ ƒZe je_[[dS )é    N)Ú*)Úwraps)ÚIntEnumÚSignalsc             C   s(   |   ¡ r|  d¡r|  d¡ p&|  d¡S )NZSIGZSIG_ZCTRL_)ÚisupperÚ
startswith)Úname© r	   úlib/python3.7/signal.pyÚ<lambda>
   s    r   ÚHandlersc             C   s   | dkS )N)ÚSIG_DFLÚSIG_IGNr	   )r   r	   r	   r
   r      ó    Úpthread_sigmaskZSigmasksc             C   s   | dkS )N)Ú	SIG_BLOCKÚSIG_UNBLOCKÚSIG_SETMASKr	   )r   r	   r	   r
   r      r   c             C   s"   y|| ƒS  t k
r   | S X dS )zsConvert a numeric value to an IntEnum member.
    If it's not a known member, return the numeric value itself.
    N)Ú
ValueError)ÚvalueZ
enum_klassr	   r	   r
   Ú_int_to_enum   s    r   c          	   C   s&   yt | ƒS  ttfk
r    | S X dS )zmConvert an IntEnum member to a numeric value.
    If it's not an IntEnum member return the value itself.
    N)Úintr   Ú	TypeError)r   r	   r	   r
   Ú_enum_to_int#   s    r   c             C   s   t  t| ƒt|ƒ¡}t|tƒS )N)Ú_signalÚsignalr   r   r   )Ú	signalnumÚhandlerr	   r	   r
   r   -   s    r   c             C   s   t  | ¡}t|tƒS )N)r   Ú	getsignalr   r   )r   r   r	   r	   r
   r   3   s    
r   c             C   s   t  | |¡}tdd„ |D ƒƒS )Nc             s   s   | ]}t |tƒV  qd S )N)r   r   )Ú.0Úxr	   r	   r
   ú	<genexpr>=   s    z"pthread_sigmask.<locals>.<genexpr>)r   r   Úset)ZhowÚmaskZsigs_setr	   r	   r
   r   :   s    Ú
sigpendingc              C   s   t  ¡ } tdd„ | D ƒƒS )Nc             s   s   | ]}t |tƒV  qd S )N)r   r   )r   r    r	   r	   r
   r!   E   s    zsigpending.<locals>.<genexpr>)r   r$   r"   )Zsigsr	   r	   r
   r$   B   s    Úsigwaitc             C   s   t  | ¡}t|tƒS )N)r   r%   r   r   )ZsigsetZretsigr	   r	   r
   r%   I   s    
)r   Ú	functoolsr   Z_wrapsÚenumr   Z_IntEnumÚglobalsZ_globalsÚ_convertÚ__name__r   r   r   r   r   Ú__doc__r$   r%   r	   r	   r	   r
   Ú<module>   s6   






