Viewing File: /opt/alt/python38/lib/python3.8/site-packages/idna/__pycache__/core.cpython-38.pyc
U
'X~, @ s> d dl mZ ddlZddlZddlZddlZd dlmZ dZdZ e
dZejd dkr`e
ZeZG d d
d
eZG dd deZG d
d deZG dd deZdd Zdd Zdd Zdd Zdd Zdd Zd7ddZd d! Zd"d# Zd$d% Zd&d' Z d8d(d)Z!d*d+ Z"d,d- Z#d.d/ Z$d9d1d2Z%d:d3d4Z&d;d5d6Z'dS )< )idnadata N)intranges_contain s xn--u [.。.。] c @ s e Zd ZdZdS ) IDNAErrorz7 Base exception for all IDNA-encoding related problems N__name__
__module____qualname____doc__ r
r
:/opt/alt/python38/lib/python3.8/site-packages/idna/core.pyr s r c @ s e Zd ZdZdS )
IDNABidiErrorz= Exception when bidirectional requirements are not satisfied Nr r
r
r
r r s r c @ s e Zd ZdZdS )InvalidCodepointz> Exception when a disallowed or unallocated codepoint is used Nr r
r
r
r r s r c @ s e Zd ZdZdS )InvalidCodepointContextzE Exception when the codepoint is not valid in the context it is used Nr r
r
r
r r s r c C s t t| S N)unicodedataZ combiningunichr)cpr
r
r _combining_class$ s r c C s t t| tj| S r )r ordr Zscripts)r Zscriptr
r
r
_is_script' s r c C s
| dS )Npunycode)encodesr
r
r _punycode* s r c C s
d | S )Nz U+{0:04X})formatr r
r
r _unot- s r c C s t | dkrdS dS )N? FTlenlabelr
r
r valid_label_length1 s r% c C s t | |rdndkrdS dS )N FTr! )r$ trailing_dotr
r
r valid_string_length8 s r) Fc C sb d}t | dD ]>\}}t|}|dkr<tdt| ||dkrd} qNq|sZ|sZdS t| d }|dkrvd}n |d krd}ntd
t| d}d}t | dD ]\}}t|}|r|dkrtd||d
krd}n|dkrd}|dkrN|s|}n||krNtdq|dkr2td||dkrBd}q|dkrd}q|s^tddS )NFr z3Unknown directionality in label {0} at position {1})RALANTr )r+ r, Lz>First codepoint in label {0} must be directionality L, R or AL)
r+ r, r- ENESCSETONBNNSMzHInvalid direction for codepoint at position {0} in a right-to-left label)r+ r, r/ r- r5 )r- r/ z2Can not mix numeral types in a right-to-left label)r. r/ r0 r1 r2 r3 r4 r5 zHInvalid direction for codepoint at position {0} in a left-to-right label)r. r/ z0Label ends with illegal codepoint directionality) enumerater Z
bidirectionalr r repr) r$ Z check_ltrZ
bidi_labelidxr directionZrtlZvalid_endingZnumber_typer
r
r
check_bidi? sR
r: c C s"