Your IP : 18.188.135.150


Current Path : /lib64/python2.7/encodings/
Upload File :
Current File : //lib64/python2.7/encodings/uu_codec.pyc

�
�mec@s�dZddlZddlZdddd�Zdd�Zdejfd	��YZd
ejfd��YZdejfd
��YZdeejfd��YZdeej	fd��YZ	d�Z
dS(sz Python 'uu_codec' Codec - UU content transfer encoding

    Unlike most of the other codecs which target Unicode, this codec
    will return Python string objects for both encode and decode.

    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.

i����Ntstricts<data>i�cCs�|dkst�ddlm}ddlm}|t|��}|�}|j}|j}	|	d|d@|f�|d�}
x&|
r�|	||
��|d�}
q�W|	d�|j�t	|�fS(	s Encodes the object input and returns a tuple (output
        object, length consumed).

        errors defines the error handling to apply. It defaults to
        'strict' handling which is the only currently supported
        error handling for this codec.

    Ri����(tStringIO(tb2a_uusbegin %o %s
i�i-s 
end
(
tAssertionErrort	cStringIORtbinasciiRtstrtreadtwritetgetvaluetlen(tinputterrorstfilenametmodeRRtinfiletoutfileRRtchunk((s*/usr/lib64/python2.7/encodings/uu_codec.pyt	uu_encodes
				
cCsI|dkst�ddlm}ddlm}|t|��}|�}|j}|j}x2|�}|s}td�n|d dkrbPqbqbx�|�}|s�|dkr�Pny||�}	WnJtj	k
r}
t
|d	�d
d@ddd
}||| �}	nX||	�q�|s3td�n|j�t|�fS(s# Decodes the object input and returns a tuple (output
        object, length consumed).

        input must be an object which provides the bf_getreadbuf
        buffer slot. Python strings, buffer objects and memory
        mapped files are examples of objects providing this slot.

        errors defines the error handling to apply. It defaults to
        'strict' handling which is the only currently supported
        error handling for this codec.

        Note: filename and file mode information in the input data is
        ignored.

    Ri����(R(ta2b_uus"Missing "begin" line in input dataitbeginsend
ii i?iisTruncated input data(
RRRRRRtreadlineRt
ValueErrortErrortordR	R
(RRRRRRRRtstdatatvtnbytes((s*/usr/lib64/python2.7/encodings/uu_codec.pyt	uu_decode,s6					$
tCodeccBs eZdd�Zdd�ZRS(RcCs
t||�S(N(R(tselfRR((s*/usr/lib64/python2.7/encodings/uu_codec.pytencodebscCs
t||�S(N(R(RRR((s*/usr/lib64/python2.7/encodings/uu_codec.pytdecodees(t__name__t
__module__R R!(((s*/usr/lib64/python2.7/encodings/uu_codec.pyR`stIncrementalEncodercBseZed�ZRS(cCst||j�dS(Ni(RR(RRtfinal((s*/usr/lib64/python2.7/encodings/uu_codec.pyR is(R"R#tFalseR (((s*/usr/lib64/python2.7/encodings/uu_codec.pyR$hstIncrementalDecodercBseZed�ZRS(cCst||j�dS(Ni(RR(RRR%((s*/usr/lib64/python2.7/encodings/uu_codec.pyR!ms(R"R#R&R!(((s*/usr/lib64/python2.7/encodings/uu_codec.pyR'lstStreamWritercBseZRS((R"R#(((s*/usr/lib64/python2.7/encodings/uu_codec.pyR(pstStreamReadercBseZRS((R"R#(((s*/usr/lib64/python2.7/encodings/uu_codec.pyR)sscCs4tjdddtdtdtdtdtdt�S(	NtnametuuR R!tincrementalencodertincrementaldecodertstreamreadertstreamwriter(tcodecst	CodecInfoRRR$R'R)R((((s*/usr/lib64/python2.7/encodings/uu_codec.pytgetregentryxs	(t__doc__R0RRRRR$R'R(R)R2(((s*/usr/lib64/python2.7/encodings/uu_codec.pyt<module>
s4