a i @ s d Z ddlZddlZdddZdddZG dd d ejZG d d dejZG dd d ejZG dd deejZG dd deej Z dd Z dS )a Python '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). Nstrictc C s |dksJ t | t| fS Nr )bz2compressleninputerrors r +/usr/lib64/python3.9/encodings/bz2_codec.py bz2_encode s r c C s |dksJ t | t| fS r )r decompressr r r r r bz2_decode s r c @ s e Zd ZdddZdddZdS ) Codecr c C s t ||S N)r selfr r r r r encode s zCodec.encodec C s t ||S 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 Zd ddZdddZdd Zd S )IncrementalEncoderr c C s |dksJ || _ t | _d S r )r r BZ2Compressorcompressobjr r r r r __init__ s zIncrementalEncoder.__init__Fc C s. |r| j |}|| j S | j |S d S r )r r flush)r r finalcr r r r # s zIncrementalEncoder.encodec C s t | _d S r )r r r r r r r reset* s zIncrementalEncoder.resetN)r )F)r r r r r r! r r r r r s r c @ s( e Zd Zd ddZdddZdd Zd S )IncrementalDecoderr c C s |dksJ || _ t | _d S r )r r BZ2Decompressor decompressobjr r r r r . s zIncrementalDecoder.__init__Fc C s( z| j |W S ty" Y dS 0 d S )N )r$ r EOFError)r r r r r r r 3 s zIncrementalDecoder.decodec C s t | _d S r )r r# r$ r r r r r! 9 s zIncrementalDecoder.resetN)r )F)r r r r r r! r r r r r" - s r" c @ s e Zd ZeZdS )StreamWriterNr r r bytescharbuffertyper r r r r' <