o
    Ëý°j.  ã                   @   s¸   d dl mZmZmZmZmZ ddlZddlZddlm	Z	m
Z
 e d¡ZG dd„ dejƒZG dd	„ d	ejƒZG d
d„ dejƒZG dd„ deejƒZG dd„ deejƒZdejfdd„ZdS )é   )ÚencodeÚdecodeÚalabelÚulabelÚ	IDNAErroré    N)ÚTupleÚOptionalu   [.ã€‚ï¼Žï½¡]c                	   @   sL   e Zd Zd
dededeeef fdd„Zd
dededeeef fdd„Zd	S )ÚCodecÚstrictÚdataÚerrorsÚreturnc                 C   ó.   |dkrt d |¡ƒ‚|sdS t|ƒt|ƒfS )Nr   úUnsupported error handling "{}")ó    r   )r   Úformatr   Úlen©Úselfr   r   © r   ú‰/root/aizidognhua/tmp/workspace/projects/ec89d86c-575f-41c9-af57-ac45cbdbf775/venv/lib/python3.10/site-packages/pip/_vendor/idna/codec.pyr   
   ó
   zCodec.encodec                 C   r   )Nr   r   ©Ú r   )r   r   r   r   r   r   r   r   r      r   zCodec.decodeN)r   )	Ú__name__Ú
__module__Ú__qualname__Ústrr   ÚbytesÚintr   r   r   r   r   r   r
      s     $	r
   c                
   @   ó.   e Zd Zdedededeeef fdd„ZdS )ÚIncrementalEncoderr   r   Úfinalr   c           
      C   ó°   |dkrt d |¡ƒ‚|sdS t |¡}d}|r+|d s"d}|d= n	|s+|d= |r+d}g }d}|D ]}| t|ƒ¡ |r@|d7 }|t|ƒ7 }q1d |¡| }	|t|ƒ7 }|	|fS ©	Nr   r   r   r   éÿÿÿÿÚ.r   r   )r   r   Ú_unicode_dots_reÚsplitÚappendr   r   Újoin©
r   r   r   r#   ÚlabelsÚtrailing_dotÚresultÚsizeÚlabelÚ
result_strr   r   r   Ú_buffer_encode   s0   
z!IncrementalEncoder._buffer_encodeN)r   r   r   r   Úboolr   r    r3   r   r   r   r   r"      ó    &r"   c                
   @   r!   )ÚIncrementalDecoderr   r   r#   r   c           
      C   r$   r%   )r   r   r(   r)   r*   r   r   r+   r,   r   r   r   Ú_buffer_decode>   s0   
z!IncrementalDecoder._buffer_decodeN)r   r   r   r   r4   r   r    r7   r   r   r   r   r6   =   r5   r6   c                   @   ó   e Zd ZdS )ÚStreamWriterN©r   r   r   r   r   r   r   r9   ^   ó    r9   c                   @   r8   )ÚStreamReaderNr:   r   r   r   r   r<   b   r;   r<   r   c                	   C   s    t jdtƒ jtƒ jttttd�S )NÚidna)Únamer   r   ÚincrementalencoderÚincrementaldecoderÚstreamwriterÚstreamreader)	ÚcodecsÚ	CodecInfor
   r   r   r"   r6   r9   r<   r   r   r   r   Úgetregentryf   s   ùrE   )Úcorer   r   r   r   r   rC   ÚreÚtypingr   r	   Úcompiler(   r
   ÚBufferedIncrementalEncoderr"   ÚBufferedIncrementalDecoderr6   r9   r<   rD   rE   r   r   r   r   Ú<module>   s    
!!