3
\ä ã @ s’ d Z ddlZddlZddd„Zddd„ZG dd „ d ejƒZG d
d„ dejƒZG dd
„ d
ejƒZG dd„ deejƒZG dd„ deej ƒZ dd„ Z
dS )z Python 'hex_codec' Codec - 2-digit hex content transfer encoding.
This codec de/encodes from bytes to bytes.
Written by Marc-Andre Lemburg (mal@lemburg.com).
é NÚstrictc C s |dkst ‚tj| ƒt| ƒfS )Nr )ÚAssertionErrorÚbinasciiÚb2a_hexÚlen)ÚinputÚerrors© r ú+/usr/lib64/python3.6/encodings/hex_codec.pyÚ
hex_encode
s r c C s |dkst ‚tj| ƒt| ƒfS )Nr )r r Úa2b_hexr )r r r r r
Ú
hex_decode s r
c @ s e Zd Zddd„Zddd„ZdS ) ÚCodecr c C s
t ||ƒS )N)r )Úselfr r r r r
Úencode s zCodec.encodec C s
t ||ƒS )N)r
)r r r r r r
Údecode s zCodec.decodeN)r )r )Ú__name__Ú
__module__Ú__qualname__r r r r r r
r s
r c @ s e Zd Zddd„ZdS )ÚIncrementalEncoderFc C s | j dkst‚tj|ƒS )Nr )r r r r )r r Úfinalr r r
r s zIncrementalEncoder.encodeN)F)r r r r r r r r
r s r c @ s e Zd Zddd„ZdS )ÚIncrementalDecoderFc C s | j dkst‚tj|ƒS )Nr )r r r r )r r r r r r
r ! s zIncrementalDecoder.decodeN)F)r r r r r r r r
r s r c @ s e Zd ZeZdS )ÚStreamWriterN)r r r ÚbytesÚcharbuffertyper r r r
r % s r c @ s e Zd ZeZdS )ÚStreamReaderN)r r r r r r r r r
r ( s r c
C s t jdttttttdd�S )NÚhexF)Únamer r ÚincrementalencoderÚincrementaldecoderÚstreamwriterÚstreamreaderÚ_is_text_encoding)ÚcodecsÚ CodecInfor r
r r r r r r r r
Úgetregentry- s r% )r )r )Ú__doc__r# r r r
r r r r r r% r r r r
Ú