File: //lib64/python3.9/encodings/__pycache__/bz2_codec.cpython-39.opt-1.pyc
a
    �DOg�  �                   @   s�   d Z ddlZddlZddd�Zddd�ZG dd	� d	ej�ZG d
d� dej�ZG dd
� d
ej�ZG dd� deej�ZG 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).
�    N�strictc                 C   s   t �| �t| �fS �N)�bz2�compress�len��input�errors� r
   �+/usr/lib64/python3.9/encodings/bz2_codec.py�
bz2_encode   s    r   c                 C   s   t �| �t| �fS r   )r   �
decompressr   r   r
   r
   r   �
bz2_decode   s    r   c                   @   s    e Zd Zddd�Zddd�ZdS )	�Codecr   c                 C   s
   t ||�S r   )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
dd�Zddd�Zdd� Zd	S )�IncrementalEncoderr   c                 C   s   || _ t�� | _d S r   )r	   r   �
BZ2Compressor�compressobj�r   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   �final�cr
   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
dd�Zddd�Zdd� Zd	S )�IncrementalDecoderr   c                 C   s   || _ 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"