관리-도구
편집 파일: codec.cpython-38.pyc
U *�eb � @ s� d dl mZmZmZmZmZ ddlZddlZddlm Z m Z mZ e�d�Z G dd� dej�ZG dd � d ej�ZG d d� dej�ZG dd � d eej�ZG dd� deej�Zeeej d�dd�Ze�e� dS )� )�encode�decode�alabel�ulabel� IDNAError� N)�Any�Tuple�Optionalu [.。.。]c @ sD e Zd Zdeeeeef d�dd�Zd eeeeef d�dd�ZdS ) �Codec�strict)�data�errors�returnc C s. |dkrt d�|���|sdS t|�t|�fS )Nr �Unsupported error handling "{}"�� r )r �formatr �len��selfr r � r �8/opt/hc_python/lib/python3.8/site-packages/idna/codec.pyr s zCodec.encodec C s. |dkrt d�|���|sdS t|�t|�fS )Nr r �� r )r r r r r r r r r s zCodec.decodeN)r )r ) �__name__� __module__�__qualname__�strr �bytes�intr r r r r r r s r c @ s( e Zd Zeeeeeef d�dd�ZdS )�IncrementalEncoder�r r �finalr c C s� |dkrt d�|���|sdS t�|�}d}|rV|d sDd}|d= n|sV|d= |rVd}g }d}|D ]*}|�t|�� |r�|d7 }|t|�7 }qbd�|�| } |t|�7 }| |fS ) Nr r r r ���� .r r )r r �_unicode_dots_re�split�appendr r �join) r r r r# �labels�trailing_dot�result�size�labelZresult_bytesr r r �_buffer_encode s0 z!IncrementalEncoder._buffer_encodeN) r r r r �boolr r r r/ r r r r r! s r! c @ s( e Zd Zeeeeeef d�dd�ZdS )�IncrementalDecoderr"