B _oa. @sddlmZmZmZmZmZddlZddlZddlm Z m Z e dZ Gdddej Z Gdd d ejZGd d d ejZGd d d e ejZGddde ejZejdddZdS))encodedecodealabelulabel IDNAErrorN)TupleOptionalu [.。.。]c@sDeZdZdeeeeefdddZd eeeeefdddZdS) Codecstrict)dataerrorsreturncCs.|dkrtd||sdSt|t|fS)Nr zUnsupported error handling "{}")r)rformatrlen)selfr r r1/tmp/pip-target-avibdbtm/lib/python/idna/codec.pyr s z Codec.encodecCs.|dkrtd||sdSt|t|fS)Nr zUnsupported error handling "{}")r)rrrr)rr r rrrrs z Codec.decodeN)r )r ) __name__ __module__ __qualname__strrbytesintrrrrrrr s r c@s(eZdZeeeeeefdddZdS)IncrementalEncoder)r r finalrc Cs|dkrtd||sdSt|}d}|rV|dsDd}|d=n|sV|d=|rVd}g}d}x2|D]*}|t||r|d7}|t|7}qdWd||} |t|7}| |fS) Nr zUnsupported error handling "{}")rrr.rr)rr_unicode_dots_resplitappendrrjoin) rr r rlabels trailing_dotresultsizelabel result_strrrr_buffer_encodes0   z!IncrementalEncoder._buffer_encodeN)rrrrboolrrr*rrrrrsrc@s(eZdZeeeeeefdddZdS)IncrementalDecoder)r r rrc Cs|dkrtd||sdSt|}d}|rV|dsDd}|d=n|sV|d=|rVd}g}d}x2|D]*}|t||r|d7}|t|7}qdWd||} |t|7}| |fS) Nr zUnsupported error handling "{}")rrrrrrr)rrr r!r"rrr#) rr r rr$r%r&r'r(r)rrr_buffer_decode>s0   z!IncrementalDecoder._buffer_decodeN)rrrrr+rrr-rrrrr,=sr,c@s eZdZdS) StreamWriterN)rrrrrrrr.^sr.c@s eZdZdS) StreamReaderN)rrrrrrrr/bsr/)rc Cs tjdtjtjttttdS)Nidna)namerrincrementalencoderincrementaldecoder streamwriter streamreader) codecs CodecInfor rrrr,r.r/rrrr getregentryfsr8)corerrrrrr6retypingrr compiler r BufferedIncrementalEncoderrBufferedIncrementalDecoderr,r.r/r7r8rrrrs !!