3 \@sdZddlZddlZdddZdddZGdd d ejZGd d d ejZGd d d ejZGdddeejZGdddeej Z ddZ dS)aPython 'bz2_codec' Codec - bz2 compression encoding. This codec de/encodes from bytes to bytes and is therefore usable with bytes.transform() and bytes.untransform(). Adapted by Raymond Hettinger from zlib_codec.py which was written by Marc-Andre Lemburg (mal@lemburg.com). NstrictcCs|dks ttj|t|fS)Nr)AssertionErrorbz2compresslen)inputerrorsr !/usr/lib64/python3.6/bz2_codec.py bz2_encodes r cCs|dks ttj|t|fS)Nr)rr decompressr)rrr r r bz2_decodes r c@s eZdZdddZdddZdS) CodecrcCs t||S)N)r )selfrrr r r encodesz Codec.encodecCs t||S)N)r )rrrr r r decodesz Codec.decodeN)r)r)__name__ __module__ __qualname__rrr r r r rs rc@s(eZdZd ddZd ddZddZd S) IncrementalEncoderrcCs |dks t||_tj|_dS)Nr)rrr BZ2Compressor compressobj)rrr r r __init__s zIncrementalEncoder.__init__FcCs.|r|jj|}||jjS|jj|SdS)N)rrflush)rrfinalcr r r r#s zIncrementalEncoder.encodecCstj|_dS)N)rrr)rr r r reset*szIncrementalEncoder.resetN)r)F)rrrrrrr r r r rs  rc@s(eZdZd ddZd ddZddZd S) IncrementalDecoderrcCs |dks t||_tj|_dS)Nr)rrrBZ2Decompressor decompressobj)rrr r r r.s zIncrementalDecoder.__init__Fc Cs&y |jj|Stk r dSXdS)N)rr EOFError)rrrr r r r3s zIncrementalDecoder.decodecCstj|_dS)N)rrr)rr r r r9szIncrementalDecoder.resetN)r)F)rrrrrrr r r r r-s  rc@seZdZeZdS) StreamWriterN)rrrbytescharbuffertyper r r r r"<sr"c@seZdZeZdS) StreamReaderN)rrrr#r$r r r r r%?sr%c CstjdttttttddS)NrF)namerrincrementalencoderincrementaldecoder streamwriter streamreader_is_text_encoding)codecs CodecInfor r rrr"r%r r r r getregentryDsr.)r)r) __doc__r,rr r rrrr"r%r.r r r r s