Your IP : 216.73.216.52


Current Path : /snap/lxd/current/lib/python3/dist-packages/crc32c/__pycache__/
Upload File :
Current File : //snap/lxd/current/lib/python3/dist-packages/crc32c/__pycache__/_cli.cpython-312.pyc

�

4B�i�
���dZddlZddlZddlZddlZddlZddlZddlZddlm	Z	dZ
dZGd�dej�Z
Gd	�d
ej�Zdeded
edej ejddffd�Zded
edede
fd�Zde
dedefd�Zej,dej,ddfdedej.eddfd�Zedk(re�yy)z/CLI utility to compute crc32c on an input file.�N�)�crc32cii�c�6�eZdZUeed<eed<eed<eed<y)�_ChecksumingResult�filename�	file_size�checksum�durationN)�__name__�
__module__�__qualname__�str�__annotations__�int�float���M/build/lxd/parts/uefivars/install/lib/python3.12/site-packages/crc32c/_cli.pyrrs���M��N��M��Orrc�"�eZdZUeed<eed<y)�_FormattingOptions�
show_filename�
show_speedN)rrr
�boolrrrrrrs�����rr�filenor�
block_size�returnc#��K�td||�D]E}t|||z
�}tj|||tj��5}|��ddd��Gy#1swY�RxYw�w)Nr)�length�offset�access)�range�min�mmap�ACCESS_READ)rrrrr�mms      r�_mmap_iteratorr&sm������9�j�1����Z��V�!3�4��
�Y�Y��6�&��9I�9I�
�	�
��H�	�	��	�	�s�AA%�	A�A%�A"	�A%r�use_mmapc��t|d�5}|j�}tj|�j}|rt|||�}n,t
j|j|�}t|d�}d}tj�}	|D]}
t|
|�}�tj�}ddd�t|	z
�S#1swY�xYw)N�rbrr)�openr�os�stat�st_sizer&�	functools�partial�read�iter�time�	monotonicrr)rrr'�
input_filerr�
data_iteratorr0r	�start�data�ends            r�
_get_checksumr9(s���	
�h��	����"�"�$���G�G�F�O�+�+�	��*�6�9�j�I�M��$�$�Z�_�_�j�A�D� ��s�O�M������ ��!�	.�D��d�H�-�H�	.��n�n�����h�	�8�c�E�k�K�K���s�B)C�C�result�formatting_optsc���|jd�}|jr|d|j��z
}|jr)|j|j
z}|d|dzdzd�d�z
}|S)N�08x� z (iz.2fz MB/s))r	rrrrr
)r:r;�report�speeds    r�_format_resultrA;sr������$�F��$�$��A�f�o�o�&�'�'���!�!�� � �6�?�?�2���B�u�t�|�d�*�3�/�v�6�6���Mr�name�argsc��tjtjdd��}|j	ddd��|jd�}|j	d	d
dd�
�|j	ddtd��|jd�}|j	dddd�
�|j	dddd�
�|j|�}|j}|rtnt}tjt||��}t|j|j �}	t#||j$�D]}
t't)|
|	���y)zMain application entry-point.rz-Calculates and prints crc32c on input file(s))�description�	filenames�+z
input file(s))�nargs�helpzI/O optionsz-Mz--disable-mmapzAvoid reading file with mmap�
store_true)rI�actionz-bz--block-sizez Block size for iterative reading)�typerIzFormatting optionsz-sz--show-speedz&Report checksumming speed on each filez-Nz--hide-filenamezDo not print filename in result)rr'N)�argparse�ArgumentParser�sys�argv�add_argument�add_argument_groupr�
parse_args�disable_mmap�DEFAULT_BLOCK_SIZE_MMAP�DEFAULT_BLOCK_SIZE_FREADr.r/r9r�
hide_filenamer�maprF�printrA)rBrC�parser�io_group�formatting_group�optsr'r�get_checksumr;r:s           r�mainr_Gsb���
$�
$������!P��F�����3�_��E��(�(��7�H������%C�L���
�����
�/�	���0�0�1E�F���!�!���
5��	"���!�!���
.��	"�����T�"�D��$�$�$�H�,4�(�:R�J��$�$��*�x��L�)�T�-?�-?�)?����Q�O��l�D�N�N�3�7��
�n�V�_�5�6�7r�__main__)�__doc__rMr.r#r+rOr2�typing�_crc32crrVrU�
NamedTuplerrr�	Generatorr&rrr9rArP�Listr_rrrr�<module>rgs ��5����	�
��
��$��*����*�*����*�*��
�����-0�����d�i�i��t�+�,��L�C�L�S�L�D�L�EW�L�&	��	�1C�	��	��X�X�a�[�3�8�8�A�B�<�*7�s�*7����C�(8�*7�D�*7�Z�z���F�r