File: //lib64/python3.9/__pycache__/warnings.cpython-39.opt-1.pyc
a
    �DOg�L  �                   @   s�  d Z ddlZg d�Zd=dd�Zd>dd�Zdd	� Zd
d� ZeZdd
� ZeZ	dd� Z
dedddfdd�Zeddfdd�Z
dd� Zdd� ZG dd� de�Zdd� Zdd� Zd d!� Zd"d#� Zd$d%� Zd&d'� Zd?d)d*�Zd@d+d,�ZG d-d.� d.e�ZG d/d0� d0e�Zd1d2� Zz0dd3lmZm Z m!Z!mZmZm"Z" e Z#e!Z$d4Z%W n0 e&�y`   g Zd5Z#i Z$d(a'd6d7� Z"dZ%Y n0 eej(� e%�s�e)ed8��s�ed5e*d9d(d:� e
d;e*d(d<� e
d;e+d(d<� e
d;e,d(d<� e
d;e-d(d<� [%dS )Az&Python part of the warnings subsystem.�    N)�warn�
warn_explicit�showwarning�
formatwarning�filterwarnings�simplefilter�
resetwarnings�catch_warningsc                 C   s   t | |||||�}t|� dS )�7Hook to write a warning to a file; replace if you like.N)�WarningMessage�_showwarnmsg_impl)�message�category�filename�lineno�file�line�msg� r   � /usr/lib64/python3.9/warnings.pyr   
   s    r   c                 C   s   t | |||d|�}t|�S )�.Function to format a warning the standard way.N)r   �_formatwarnmsg_impl)r
   r   r   r   r   r   r   r   r   r      s    r   c                 C   sN   | j }|d u r tj}|d u r d S t| �}z|�|� W n tyH   Y n0 d S �N)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�}| jd u rnzdd l}|�| j| j�}W qt tyj   d }d }Y qt0 n| j}|r�|�	� }|d| 7 }| j
d u�r�zdd l}W n ty�   d}d }Y n20 |�� }z|�
| j
�}W n ty�   d }Y n0 |d u�r||d7 }|D ]r}|d|j|jf 7 }z$|d u�r<|�|j|j�}nd }W n t�yZ   d }Y n0 |�r|�	� }|d	| 7 }�qn|�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�tracemalloc�
is_tracing�get_object_traceback)	r   r   �sr"