Your IP : 3.140.188.174


Current Path : /opt/alt/python38/lib64/python3.8/__pycache__/
Upload File :
Current File : //opt/alt/python38/lib64/python3.8/__pycache__/_compression.cpython-38.opt-2.pyc

U

i�f��@s6ddlZejZGdd�dej�ZGdd�dej�ZdS)�Nc@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�
BaseStreamcCs|jrtd��dS)NzI/O operation on closed file)�closed�
ValueError��self�r�1/opt/alt/python38/lib64/python3.8/_compression.py�_check_not_closedszBaseStream._check_not_closedcCs|��st�d��dS)NzFile not open for reading)�readable�io�UnsupportedOperationrrrr�_check_can_readszBaseStream._check_can_readcCs|��st�d��dS)NzFile not open for writing)�writablerrrrrr�_check_can_writeszBaseStream._check_can_writecCs(|��st�d��|��s$t�d��dS)Nz3Seeking is only supported on files open for readingz3The underlying file object does not support seeking)r
rr�seekablerrrr�_check_can_seeks
zBaseStream._check_can_seekN)�__name__�
__module__�__qualname__r	r
rrrrrrr	srcsfeZdZdd�Zddd�Z�fdd�Zdd	�Zd
d�Zdd
d�Zdd�Z	e
jfdd�Zdd�Z
�ZS)�DecompressReadercCsdS)NTrrrrrr
$szDecompressReader.readablercKs>||_d|_d|_d|_||_||_|jf|j�|_||_dS)NFr���)�_fp�_eof�_pos�_size�_decomp_factory�_decomp_args�
_decompressor�_trailing_error)r�fpZdecomp_factoryZtrailing_errorZdecomp_argsrrr�__init__'szDecompressReader.__init__csd|_t���S�N)r�super�closer��	__class__rrr#;szDecompressReader.closecCs
|j��Sr!)rrrrrrr?szDecompressReader.seekablec
CsPt|��:}|�d��$}|�t|��}||dt|��<W5QRXW5QRXt|�S)N�B)�
memoryview�cast�read�len)r�bZviewZ	byte_view�datarrr�readintoBs$zDecompressReader.readintorcCs�|dkr|��S|r|jrdSd}|jjr�|jjp<|j�t�}|sDq�|jf|j	�|_z|j�
||�}Wq�|jk
r�Yq�Yq�Xn4|jjr�|j�t�}|s�t
d��nd}|j�
||�}|r"q�q"|s�d|_|j|_dS|jt|�7_|S)Nr�zACompressed file ended before the end-of-stream marker was reachedT)�readallrr�eofZunused_datarr)�BUFFER_SIZErr�
decompressrZneeds_input�EOFErrorrrr*)r�sizer,Zrawblockrrrr)Hs@

��
zDecompressReader.readcCs,|j�d�d|_d|_|jf|j�|_dS)NrF)r�seekrrrrrrrrr�_rewindrszDecompressReader._rewindcCs�|tjkrnR|tjkr"|j|}n<|tjkrP|jdkrD|�tj�rDq6|j|}ntd�	|���||jkrr|�
�n
||j8}|dkr�|�ttj|��}|s�q�|t|�8}q||jS)NrzInvalid value for whence: {})
r�SEEK_SET�SEEK_CURr�SEEK_ENDrr)�DEFAULT_BUFFER_SIZEr�formatr6�minr*)r�offset�whencer,rrrr5xs&






zDecompressReader.seekcCs|jSr!)rrrrr�tell�szDecompressReader.tell)r)r)rrrr
r r#rr-r)r6rr7r5r?�
__classcell__rrr$rr!s

*r)rr:r1�BufferedIOBaser�	RawIOBaserrrrr�<module>s

?>