D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
opt
/
alt
/
python37
/
lib
/
python3.7
/
site-packages
/
idna
/
__pycache__
/
Filename :
codec.cpython-37.pyc
back
Copy
B �B�h^ � @ s� d dl Z d dlZd dlmZmZmZ ddlmZmZm Z m Z mZ e�d�Z G dd� de j�ZG dd � d e j�ZG d d� de j�ZG dd � d ee j�ZG dd� dee j�Zeee j d�dd�Ze �e� dS )� N)�Any�Optional�Tuple� )� IDNAError�alabel�decode�encode�ulabelu [.。.。]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 zUnsupported error handling "{}")� r )r �formatr �len)�selfr r � r �;/opt/alt/python37/lib/python3.7/site-packages/idna/codec.pyr s zCodec.encodec C s. |dkrt d�|���|sdS t|�t|�fS )Nr zUnsupported error handling "{}")� r )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}x2|D ]*}|�t|�� |r�|d7 }|t|�7 }qdW d�|�| } |t|�7 }| |fS ) Nr zUnsupported error handling "{}")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 )�IncrementalDecoder)r r r r c C s� |dkrt d�|���|sdS t|t�s2t|d�}t�|�}d}|rj|d sXd}|d= n|sj|d= |rjd}g }d}x2|D ]*}|�t|�� |r�|d 7 }|t|�7 }qxW d� |�| } |t|�7 }| |fS ) Nr zUnsupported error handling "{}")r r �asciir r �.r r ) r r � isinstancer r! r"