File: //lib64/python3.8/encodings/__pycache__/uu_codec.cpython-38.pyc
U
e5d# @ s d Z ddlZddlZddlmZ dddZdd d
ZG dd dejZG d
d dejZG dd dej Z G dd deej
Z
G dd deejZdd ZdS )a Python 'uu_codec' Codec - UU content transfer encoding.
This codec de/encodes from bytes to bytes.
Written by Marc-Andre Lemburg (mal@lemburg.com). Some details were
adapted from uu.py which was written by Lance Ellinghouse and
modified by Jack Jansen and Fredrik Lundh.
N)BytesIOstrict<data> c C s |dkst t| }t }|j}|j}|dd}|dd}|d|d@ |f d |d }|r||t| |d }q`|d
| t | fS )Nr
z\n
z\rzbegin %o %s
i ascii- s
end
)
AssertionErrorr readwritereplaceencodebinasciiZb2a_uugetvaluelen) inputerrorsfilenamemodeinfileoutfiler r chunk r */usr/lib64/python3.8/encodings/uu_codec.py uu_encode s
r c
C s |dkst t| }t }|j}|j}| }|s8td|d d dkr&qLq&| }|r|dkr`qzt|}W nR tjk
r } z2|d d d@ d d d
} t|d | }W 5 d }~X Y nX || qL|std| t | fS )Nr z"Missing "begin" line in input data s begins end
r ? zTruncated input data)
r
r readliner
ValueErrorr Za2b_uuErrorr r )
r r r r r! r sdatavnbytesr r r uu_decode% s, $
r( c @ s e Zd ZdddZdddZdS ) Codecr c C s
t ||S N)r selfr r r r r r G s zCodec.encodec C s
t ||S r* )r( r+ r r r decodeJ s zCodec.decodeN)r )r )__name__
__module____qualname__r r- r r r r r) F s
r) c @ s e Zd ZdddZdS )IncrementalEncoderFc C s t || jd S Nr )r r r, r finalr r r r N s zIncrementalEncoder.encodeN)F)r. r/ r0 r r r r r r1 M s r1 c @ s e Zd ZdddZdS )IncrementalDecoderFc C s t || jd S r2 )r( r r3 r r r r- R s zIncrementalDecoder.decodeN)F)r. r/ r0 r- r r r r r5 Q s r5 c @ s e Zd ZeZdS )StreamWriterNr. r/ r0 bytescharbuffertyper r r r r6 U s r6 c @ s e Zd ZeZdS )StreamReaderNr7 r r r r r: X s r: c
C s t jdttttttddS )NuuF)namer r- incrementalencoderincrementaldecoderstreamreaderstreamwriter_is_text_encoding)codecs CodecInfor r( r1 r5 r: r6 r r r r getregentry] s rD )r r r )r )
__doc__rB r ior r r( r) r1 r5 r6 r: rD r r r r <module> s
!