U
    wy]M                     @   s  d dl Z dddddddd	gZd;d
dZd<ddZdd Zdd ZeZdd ZeZdd Z	de
dd dfddZe
d dfddZdd Zdd ZG dd deZdd Zdd  Zd!d" Zd#d$ Zd%d& Zd'd( Zd=d*dZd>d+dZG d,d- d-eZG d.d	 d	eZd/d0 Zz0d d1lmZmZm Z mZmZm!Z! eZ"e Z#d2Z$W n2 e%k
rj   g Zd3Z"i Z#d)a&d4d5 Z!dZ$Y nX ee j' e$se(e d6sed3e)d7d)d8 ed9e)d)d: ed9e*d)d: ed9e+d)d: ed9e,d)d: [$dS )?    Nwarnwarn_explicitshowwarningformatwarningfilterwarningssimplefilterresetwarningscatch_warningsc                 C   s   t | |||||}t| d S N)WarningMessage_showwarnmsg_impl)messagecategoryfilenamelinenofilelinemsg r   E/home/stadmin/Documents/SimTableSoftware/Python-3.8.0/Lib/warnings.pyr   
   s    c                 C   s   t | |||d |}t|S r
   )r   _formatwarnmsg_impl)r   r   r   r   r   r   r   r   r   r      s    c                 C   sP   | j }|d kr tj}|d kr d S t| }z|| W n tk
rJ   Y nX d S r
   )r   sysstderr_formatwarnmsgwriteOSError)r   r   textr   r   r   r      s    r   c           	   	   C   s  | j j}| j d| j d| d| j d}| jd krpzdd l}|| j| j}W qv tk
rl   d }d }Y qvX n| j}|r|	 }|d| 7 }| j
d k	rzdd l}W n tk
r   d}d }Y n4X | }z|| j
}W n tk
r   d }Y nX |d k	r|d7 }|D ]t}|d|j|jf 7 }z$|d k	rB||j|j}nd }W n tk
rb   d }Y nX |r|	 }|d	| 7 }qn|s|| d
7 }|S )N:z: 
r   z  %s
Tz-Object allocated at (most recent call last):
z  File "%s", lineno %s
z    %s
z<: Enable tracemalloc to get the object allocation traceback
)r   __name__r   r   r   r   	linecachegetline	ExceptionstripsourcetracemallocZ
is_tracingZget_object_traceback)	r   r   sr    r   r%   Ztracingtbframer   r   r   r   #   sT    "






r   c                 C   sd   zt }W n tk
r   Y n<X |tk	rXt|s6td|| j| j| j| j| j	| j
 d S t|  d S )Nz:warnings.showwarning() must be set to a function or method)r   	NameError_showwarning_origcallable	TypeErrorr   r   r   r   r   r   r   )r   Zswr   r   r   _showwarnmsg`   s     r-   c                 C   sH   zt }W n tk
r   Y n$X |tk	r@|| j| j| j| j| jS t| S r
   )	r   r)   _formatwarning_origr   r   r   r   r   r   )r   Zfwr   r   r   r   u   s    
  r    Fc                 C   sT   |s|rdd l }|r$|||j}nd }|r8||}nd }t| |||||d d S )Nr   append)recompileI_add_filter)actionr   r   moduler   r1   r2   r   r   r   r      s    c                 C   s   t | d |d ||d d S )Nr0   )r5   )r6   r   r   r1   r   r   r   r      s    c                 G   sR   | s6zt | W n tk
r&   Y nX t d| n|t krHt | t  d S )Nr   )filtersremove
ValueErrorinsertr1   _filters_mutated)r1   itemr   r   r   r5      s    
r5   c                   C   s   g t d d < t  d S r
   )r8   r<   r   r   r   r   r      s    c                   @   s   e Zd ZdS )_OptionErrorN)r   
__module____qualname__r   r   r   r   r>      s   r>   c                 C   sN   | D ]D}zt | W q tk
rF } ztd|tjd W 5 d }~X Y qX qd S )NzInvalid -W option ignored:)r   )
_setoptionr>   printr   r   )argsargr   r   r   r   _processoptions   s
    rE   c              	   C   s   dd l }| d}t|dkr,td| f t|dk rD|d q,dd |D \}}}}}t|}||}t|}||}|r|d }|rzt|}|dk rt	W q t	t
fk
r   td	|f d Y qX nd}t||||| d S )
Nr   r      ztoo many fields (max 5): %rr/   c                 S   s   g | ]}|  qS r   )r#   ).0r&   r   r   r   
<listcomp>   s   z_setoption.<locals>.<listcomp>$zinvalid lineno %r)r2   splitlenr>   r1   
_getactionZescape_getcategoryintr:   OverflowErrorr   )rD   r2   Zpartsr6   r   r   r7   r   r   r   r   rA      s0    


rA   c                 C   sB   | sdS | dkrdS dD ]}| | r|  S qtd| f d S )Ndefaultallalways)rP   rR   ignorer7   onceerrorzinvalid action: %r)
startswithr>   )r6   ar   r   r   rL      s     

rL   c                 C   s   dd l }| stS |d| rPzt| }W q tk
rL   td| f d Y qX n| d}| d | }| |d d  }zt|d d |g}W n$ tk
r   td|f d Y nX zt	||}W n$ t
k
r   td| f d Y nX t|tstd| f |S )Nr   z^[a-zA-Z0-9_]+$zunknown warning category: %r.   zinvalid module name: %rzinvalid warning category: %r)r2   Warningmatchevalr)   r>   rfind
__import__ImportErrorgetattrAttributeError
issubclass)r   r2   catir7   Zklassmr   r   r   rM      s,    

rM   c                 C   s   | j j}d|kod|kS )NZ	importlib
_bootstrap)f_codeco_filename)r(   r   r   r   r   _is_internal_frame  s    ri   c                 C   s"   | j } | d k	rt| r| j } q| S r
   )f_backri   )r(   r   r   r   _next_external_frame  s    rk   rY   c              	   C   s  t | tr| j}|d krt}t |tr0t|tsDtdt|jzV|dks\t	t
drht
|}n0t
d}t|d D ]}t|}|d kr~tq~W n" tk
r   t
j}d}d}Y nX |j}|jj}|j}d|kr|d }	nd}	|di }
t| ||||	|
|| d S )Nz/category must be a Warning subclass, not '{:s}'rY   r   r   z<string>Z__warningregistry__)
isinstancerZ   	__class__UserWarningtyperb   r,   formatr   ri   r   	_getframerangerk   r:   __dict__	f_globalsrg   rh   f_lineno
setdefaultr   )r   r   
stacklevelr$   r(   xglobalsr   r   r7   registryr   r   r   r   #  s>    




 c                 C   s  t |}|d kr8|pd}|dd   dkr8|d d }|d krDi }|ddtkrd|  t|d< t| tr~t| }| j}n| }|| } |||f}	||	rd S t	D ]V}
|
\}}}}}|d ks|
|rt||r|d ks|
|r|dks||kr qqt}|dkrd S dd l}||| |dkr2| |dkrfd	||	< ||f}t|r\d S d	t|< nf|d
krrnZ|dkrd	||	< ||df}||rd S d	||< n$|dkrd	||	< ntd||
f t| ||||}t| d S )Nz	<unknown>z.pyversionr   rS   rU   rT   rY   rR   r7   rP   z1Unrecognized action (%r) in warnings.filters:
 %s)rN   lowerget_filters_versionclearrl   rZ   strrm   r8   r[   rb   defaultactionr    ZgetlinesonceregistryRuntimeErrorr   r-   )r   r   r   r   r7   rz   Zmodule_globalsr$   r   keyr=   r6   r   rc   modZlnr    ZoncekeyZaltkeyr   r   r   r   K  s|    












c                   @   s"   e Zd ZdZdddZdd ZdS )r   )r   r   r   r   r   r   r$   Nc                 C   s>   || _ || _|| _|| _|| _|| _|| _|r4|jnd | _d S r
   )	r   r   r   r   r   r   r$   r   _category_name)selfr   r   r   r   r   r   r$   r   r   r   __init__  s    zWarningMessage.__init__c                 C   s   d| j | j| j| j| jf S )NzD{message : %r, category : %r, filename : %r, lineno : %s, line : %r})r   r   r   r   r   )r   r   r   r   __str__  s      zWarningMessage.__str__)NNN)r   r?   r@   Z_WARNING_DETAILSr   r   r   r   r   r   r     s       
r   c                   @   s4   e Zd ZdddddZdd Zdd	 Zd
d ZdS )r	   FN)recordr7   c                C   s(   || _ |d krtjd n|| _d| _d S )NwarningsF)_recordr   modules_module_entered)r   r   r7   r   r   r   r     s    zcatch_warnings.__init__c                 C   sP   g }| j r|d | jtjd k	r4|d| j  t| j}d|d|f S )Nzrecord=Truer   z	module=%rz%s(%s)z, )r   r1   r   r   r   ro   r   join)r   rC   namer   r   r   __repr__  s    

zcatch_warnings.__repr__c                 C   s~   | j rtd|  d| _ | jj| _| jd d  | j_| j  | jj| _| jj| _| j	rvg }|j
| j_| jj| j_|S d S d S )NzCannot enter %r twiceT)r   r   r   r8   _filtersr<   r   _showwarningr   r   r1   r*   )r   Zlogr   r   r   	__enter__  s    




zcatch_warnings.__enter__c                 G   s>   | j std|  | j| j_| j  | j| j_| j| j_d S )Nz%Cannot exit %r without entering first)	r   r   r   r   r8   r<   r   r   r   )r   exc_infor   r   r   __exit__  s    


zcatch_warnings.__exit__)r   r?   r@   r   r   r   r   r   r   r   r   r	     s   	c                    sz   d j  dg} jd k	rVdd ldd l} fdd}|d ||t| 7 }d|d}t	|t
d	 d
 d S )Nzcoroutine 'z' was never awaited
r   c                  3   s4   t  jD ]$\} }}| |}| |||fV  q
d S r
   )reversed	cr_originr!   )r   r   Zfuncnamer   coror    r   r   extract  s    z*_warn_unawaited_coroutine.<locals>.extractz-Coroutine created at (most recent call last)
r/   r      )r   rw   r$   )r@   r   r    	tracebackr1   Zformat_listlistr   rstripr   RuntimeWarning)r   Z	msg_linesr   r   r   r   r   r   _warn_unawaited_coroutine  s    

r   )r8   _defaultaction_onceregistryr   r   r<   TrP   c                   C   s   t d7 a d S )NrY   )r   r   r   r   r   r<     s    r<   Zgettotalrefcount__main__)r   r7   r1   rS   )r   r1   )NN)N)NrY   N)NNNN)-r   __all__r   r   r   r   r*   r-   r.   r   rZ   r   r   r5   r   r"   r>   rE   rA   rL   rM   ri   rk   r   r   objectr   r	   r   	_warningsr8   r   r   r<   r   r   Z_warnings_defaultsr_   r   warnoptionshasattrDeprecationWarningPendingDeprecationWarningImportWarningResourceWarningr   r   r   r   <module>   sz      

;
#
	
)      
GC 

 