Plan 9 from Bell Labs’s /usr/web/sources/contrib/jas/root/sys/lib/python2.7/encodings/uu_codec.pyc

Copyright © 2021 Plan 9 Foundation.
Distributed under the MIT License.
Download the Plan 9 distribution.


��Qc@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 ([email protected]). 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(/sys/lib/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(/sys/lib/python2.7/encodings/uu_codec.pyt	uu_decode,s6					$
tCodeccBs eZdd�Zdd�ZRS(RcCs
t||�S(N(R(tselfRR((s(/sys/lib/python2.7/encodings/uu_codec.pytencodebscCs
t||�S(N(R(RRR((s(/sys/lib/python2.7/encodings/uu_codec.pytdecodees(t__name__t
__module__R R!(((s(/sys/lib/python2.7/encodings/uu_codec.pyR`stIncrementalEncodercBseZed�ZRS(cCst||j�dS(Ni(RR(RRtfinal((s(/sys/lib/python2.7/encodings/uu_codec.pyR is(R"R#tFalseR (((s(/sys/lib/python2.7/encodings/uu_codec.pyR$hstIncrementalDecodercBseZed�ZRS(cCst||j�dS(Ni(RR(RRR%((s(/sys/lib/python2.7/encodings/uu_codec.pyR!ms(R"R#R&R!(((s(/sys/lib/python2.7/encodings/uu_codec.pyR'lstStreamWritercBseZRS((R"R#(((s(/sys/lib/python2.7/encodings/uu_codec.pyR(pstStreamReadercBseZRS((R"R#(((s(/sys/lib/python2.7/encodings/uu_codec.pyR)sscCs4tjdddtdtdtdtdtdt�S(	NtnametuuR R!tincrementalencodertincrementaldecodertstreamreadertstreamwriter(tcodecst	CodecInfoRRR$R'R)R((((s(/sys/lib/python2.7/encodings/uu_codec.pytgetregentryxs	(t__doc__R0RRRRR$R'R(R)R2(((s(/sys/lib/python2.7/encodings/uu_codec.pyt<module>
s4

Bell Labs OSI certified Powered by Plan 9

(Return to Plan 9 Home Page)

Copyright © 2021 Plan 9 Foundation. All Rights Reserved.
Comments to [email protected].