Your IP : 18.117.105.184


Current Path : /opt/alt/python312/lib64/python3.12/__pycache__/
Upload File :
Current File : //opt/alt/python312/lib64/python3.12/__pycache__/_compression.cpython-312.opt-1.pyc

�

�Q�f1���dZddlZddlZejZGd�dej
�ZGd�dej�Zy)z7Internal classes used by the gzip, lzma and bz2 modules�Nc�(�eZdZdZd�Zd�Zd�Zd�Zy)�
BaseStreamzMode-checking helper functions.c�2�|jrtd��y)NzI/O operation on closed file)�closed�
ValueError��selfs �3/opt/alt/python312/lib64/python3.12/_compression.py�_check_not_closedzBaseStream._check_not_closeds���;�;��;�<�<��c�N�|j�stjd��y)NzFile not open for reading)�readable�io�UnsupportedOperationrs r
�_check_can_readzBaseStream._check_can_read�"���}�}���)�)�*E�F�F�rc�N�|j�stjd��y)NzFile not open for writing)�writablerrrs r
�_check_can_writezBaseStream._check_can_writerrc��|j�stjd��|j�stjd��y)Nz3Seeking is only supported on files open for readingz3The underlying file object does not support seeking)rrr�seekablers r
�_check_can_seekzBaseStream._check_can_seeksO���}�}���)�)�+F�G�
G��}�}���)�)�+E�F�
F�rN)�__name__�
__module__�__qualname__�__doc__rrrr�rr
rr	s��)�=�G�G�Frrc�t��eZdZdZd�Zdd�Z�fd�Zd�Zd�Zd
d�Z	d�Z
d	�Zejfd
�Zd�Z�xZS)�DecompressReaderz5Adapts the decompressor API to a RawIOBase reader APIc��y)NTrrs r
rzDecompressReader.readable$s��rc��||_d|_d|_d|_||_||_|jdi|j
��|_||_y)NFr���r)�_fp�_eof�_pos�_size�_decomp_factory�_decomp_args�
_decompressor�_trailing_error)r	�fp�decomp_factory�trailing_error�decomp_argss     r
�__init__zDecompressReader.__init__'sZ�������	���	���
� .���'���1�T�1�1�F�D�4E�4E�F��� .��rc�.��d|_t�|�	�S�N)r)�super�close)r	�	__class__s �r
r3zDecompressReader.close;s���!����w�}��rc�6�|jj�Sr1)r#rrs r
rzDecompressReader.seekable?s���x�x� � �"�"rc��t|�5}|jd�5}|jt|��}||dt|�ddd�ddd�t�S#1swY�xYw#1swYt�SxYw)N�B)�
memoryview�cast�read�len)r	�b�view�	byte_view�datas     r
�readintozDecompressReader.readintoBsc��
��]�d�D�I�I�c�N�i��9�9�S��^�,�D�$(�I�j�s�4�y�!�%3�]��4�y��%3�N��]��4�y��s"�A.�)A"�A.�"A+	�'A.�.Bc���|dkr|j�S|r|jryd}	|jjry|jjxs|j
j
t�}|sn�|jdi|j��|_	|jj||�}n`|jjr,|j
j
t�}|s
td��d}|jj||�}|rn��|sd|_|j|_y|xjt!|�z
c_|S#|j$rY�LwxYw)NrrTzACompressed file ended before the end-of-stream marker was reachedr)�readallr$r)�eof�unused_datar#r:�BUFFER_SIZEr'r(�
decompressr*�needs_input�EOFErrorr%r&r;)r	�sizer?�rawblocks    r
r:zDecompressReader.readHsY���!�8��<�<�>�!��t�y�y������!�!�%�%� �.�.�:�:�7� �H�H�M�M�+�6����%9�T�%9�%9�&)��'�'�&)��"���-�-�8�8��4�H�D�
�%�%�1�1�#�x�x�}�}�[�9�H�#�&�(J�K�K� #�H��)�)�4�4�X�t�D����1�2��D�I����D�J���	�	�S��Y��	����'�+�+����s�E�E(�'E(c���g}|jtj�x}r3|j|�|jtj�x}r�3dj	|�S)Nr)r:�sys�maxsize�append�join)r	�chunksr?s   r
rBzDecompressReader.readallqsX�����i�i����,�,�d�,��M�M�$���i�i����,�,�d�,��x�x���rc��|jjd�d|_d|_|jdi|j
��|_y)NrFr)r#�seekr$r%r'r(r)rs r
�_rewindzDecompressReader._rewind|s>�����
�
�a����	���	�1�T�1�1�F�D�4E�4E�F��rc��|tjk(rn�|tjk(r|j|z}n�|tjk(r_|j
dkr@|j
tj�r!	|j
tj�r�!|j
|z}ntdj|���||jkr|j�n||jz}|dkDrL|j
ttj|��}|s
	|jS|t|�z}|dkDr�L|jS)NrzInvalid value for whence: {})
r�SEEK_SET�SEEK_CURr%�SEEK_ENDr&r:�DEFAULT_BUFFER_SIZEr�formatrS�minr;)r	�offset�whencer?s    r
rRzDecompressReader.seek�s���R�[�[� ��
�r�{�{�
"��Y�Y��'�F�
�r�{�{�
"��z�z�A�~��i�i�� 6� 6�7���i�i�� 6� 6�7��Z�Z�&�(�F��;�B�B�6�J�K�K��D�I�I���L�L�N��d�i�i��F��q�j��9�9�S��!7�!7��@�A�D����y�y��
�c�$�i��F�	�q�j��y�y�rc��|jS)z!Return the current file position.)r%rs r
�tellzDecompressReader.tell�s���y�y�r)r)r")rrrrrr/r3rr@r:rBrSrrUrRr^�
__classcell__)r4s@r
rr!sC���?��.�(�#��'�R �G�#%�+�+��<rr)	rrrLrXrE�BufferedIOBaser�	RawIOBaserrrr
�<module>rbs?��=�	�
��$�$��F��"�"�F�0A�r�|�|�Ar

?>