o
    bc                     @   sl   d Z dZdZdZdZdZddlZG dd	 d	Ze Zej	Z	ej
Z
ejZejZejZejZd
d Zdd ZdS )z,A simple log mechanism styled after PEP 282.                   Nc                   @   sP   e Zd ZefddZdd Zdd Zdd Zd	d
 Zdd Z	dd Z
dd ZdS )Logc                 C   s
   || _ d S N)	threshold)selfr	    r   $/usr/lib/python3.10/distutils/log.py__init__   s   
zLog.__init__c                 C   s   |t ttttfvrtdt| || jkrV|r|| }|tttfv r'tj	}ntj
}z	|d|  W n tyO   |j}||d|}|d|  Y nw |  d S d S )Nz%s wrong log levelz%s
backslashreplace)DEBUGINFOWARNERRORFATAL
ValueErrorstrr	   sysstderrstdoutwriteUnicodeEncodeErrorencodingencodedecodeflush)r
   levelmsgargsstreamr   r   r   r   _log   s"   
zLog._logc                 G   s   |  ||| d S r   )r#   )r
   r   r    r!   r   r   r   log'      zLog.logc                 G      |  t|| d S r   )r#   r   r
   r    r!   r   r   r   debug*   r%   z	Log.debugc                 G   r&   r   )r#   r   r'   r   r   r   info-   r%   zLog.infoc                 G   r&   r   )r#   r   r'   r   r   r   warn0   r%   zLog.warnc                 G   r&   r   )r#   r   r'   r   r   r   error3   r%   z	Log.errorc                 G   r&   r   )r#   r   r'   r   r   r   fatal6   r%   z	Log.fatalN)__name__
__module____qualname__r   r   r#   r$   r(   r)   r*   r+   r,   r   r   r   r   r      s    r   c                 C   s   t j}| t _|S r   )_global_logr	   )r   oldr   r   r   set_thresholdA   s   r2   c                 C   s@   | dkr
t t d S | dkrt t d S | dkrt t d S d S )Nr   r   r   )r2   r   r   r   )vr   r   r   set_verbosityG   s   r4   )__doc__r   r   r   r   r   r   r   r0   r$   r(   r)   r*   r+   r,   r2   r4   r   r   r   r   <module>   s"    +