Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/parser.cpython-312.pyc

�

4Μg;*��,�dZddlZddlZddlZddlZddlZddlmZddlm	Z	m
Z
mZmZm
Z
mZddlmZddlmZmZddlmZmZej.e�ZGd�d	ej4�ZGd
�de�ZGd�d
ej:�ZGd�de�Zy)zBase option parser setup�N)�suppress)�Any�Dict�	Generator�List�Optional�Tuple)�
UNKNOWN_ERROR)�
Configuration�ConfigurationError)�redact_auth_from_url�	strtoboolc	����eZdZdZdededdf�fd�Zdejdefd�Z		ddejd	ed
edefd�Z
dedefd
�Zdedefd�Zde
edefd�Zde
edefd�Zdededefd�Z�xZS)�PrettyHelpFormatterz4A prettier/less verbose help formatter for optparse.�args�kwargs�returnNc�r��d|d<d|d<tj�ddz
|d<t�|�|i|��y)N��max_help_position��indent_incrementr��width)�shutil�get_terminal_size�super�__init__)�selfrr�	__class__s   ��C/usr/local/lib/python3.12/site-packages/pip/_internal/cli/parser.pyrzPrettyHelpFormatter.__init__sG���&(��"�#�%&��!�"� �2�2�4�Q�7�!�;��w��
���$�)�&�)��optionc�$�|j|�S�N)�_format_option_strings)rr#s  r!�format_option_stringsz)PrettyHelpFormatter.format_option_stringss���*�*�6�2�2r"�mvarfmt�optsepc��g}|jr|j|jd�|jr|j|jd�t|�dkDr|j	d|�|j�rd|j�J�|jxs|jj�}|j|j|j���dj|�S)z�
        Return a comma-separated list of option strings and metavars.

        :param option:  tuple of (short opt, long opt), e.g: ('-f', '--format')
        :param mvarfmt: metavar format string
        :param optsep:  separator
        rr�)�_short_opts�append�
_long_opts�len�insert�takes_value�dest�metavar�lower�format�join)rr#r(r)�optsr3s      r!r&z*PrettyHelpFormatter._format_option_stringss���������K�K��*�*�1�-�.�����K�K��)�)�!�,�-��t�9�q�=��K�K��6�"������;�;�*�*�*��n�n�;����(9�(9�(;�G��K�K����w�}�}��7�8��w�w�t�}�r"�headingc��|dk(ry|dzS)N�Optionsr+�:
�)rr8s  r!�format_headingz"PrettyHelpFormatter.format_heading9s���i������r"�usagec�n�dj|jtj|�d��}|S)zz
        Ensure there is only one newline between usage and the first heading
        if there is no description.
        z
Usage: {}
�  )r5�indent_lines�textwrap�dedent)rr>�msgs   r!�format_usagez PrettyHelpFormatter.format_usage>s/��
�$�$�T�%6�%6�x���u�7M�t�%T�U���
r"�descriptionc���|rkt|jd�rd}nd}|jd�}|j�}|j	tj|�d�}|�d|�d�}|Sy)N�main�Commands�Description�
r@r;r+)�hasattr�parser�lstrip�rstriprArBrC)rrF�labels   r!�format_descriptionz&PrettyHelpFormatter.format_descriptionFsq����t�{�{�F�+�"��%��%�,�,�T�2�K�%�,�,�.�K��+�+�H�O�O�K�,H�$�O�K�"�G�3�{�m�2�6�K���r"�epilogc��|r|Sy)Nr+r<)rrRs  r!�
format_epilogz!PrettyHelpFormatter.format_epilogXs
����M�r"�text�indentc�p�|jd�D�cgc]}||z��	}}dj|�Scc}w�NrK)�splitr6)rrUrV�line�	new_liness     r!rAz PrettyHelpFormatter.indent_lines_s:��/3�z�z�$�/?�@�/?�t�V�d�]�/?�	�@��y�y��#�#��As�3)z <{}>z, )�__name__�
__module__�__qualname__�__doc__rr�optparse�Option�strr'r&r=rErrQrTrA�
__classcell__�r s@r!rrs����>�*�c�*�S�*�T�*�3�H�O�O�3��3�NR���o�o��03��GJ��	��4�c��c��
�#��#���h�s�m����$�H�S�M��c��$��$�c�$�c�$r"rc�@��eZdZdZdej
def�fd�Z�xZS)�UpdatingDefaultsHelpFormatterz�Custom help formatter for use in ConfigOptionParser.

    This is updates the defaults before expanding them, allowing
    them to show up correctly in the help listing.

    Also redact auth from url type options
    r#rc���d}|j��t|jt�sJ�|jj|jj�|j
�J�|jjj
|j
�}t�|�!|�}|rV|jdk(rGt|t�r|g}t|t�sg}|D]}|j|t|��}�|S)N�URL)rM�
isinstance�ConfigOptionParser�_update_defaults�defaultsr2�getr�expand_defaultr3rb�list�replacer
)rr#�default_values�	help_text�valr s     �r!rnz,UpdatingDefaultsHelpFormatter.expand_defaultms�������;�;�"��d�k�k�+=�>�>�>��K�K�(�(����)=�)=�>��;�;�*�*�*�!�[�[�1�1�5�5�f�k�k�B�N��G�*�6�2�	��f�n�n��5��.�#�.�"0�!1���n�d�3�!#��%��%�-�-�c�3G��3L�M�	�&��r")	r\r]r^r_r`rarbrnrcrds@r!rfrfds$�����X�_�_����r"rfc�h�eZdZdedededejfd�Zede	ejfd��Zy)�CustomOptionParser�idxrrrc��|j|i|��}|jj�|jj||�|S)z*Insert an OptionGroup at a given position.)�add_option_group�
option_groups�popr0)rrvrr�groups     r!�insert_option_groupz&CustomOptionParser.insert_option_group�sH��&��%�%�t�6�v�6������� ����!�!�#�u�-��r"c�|�|jdd}|jD]}|j|j��|S)z<Get a list of all options, including those in option groups.N)�option_listry�extend)r�res�is   r!�option_list_allz"CustomOptionParser.option_list_all�s;�����q�!���#�#�A��J�J�q�}�}�%�$��
r"N)r\r]r^�intrr`�OptionGroupr|�propertyrrar�r<r"r!ruru�sQ��	��	�"�	�.1�	�	�	�	�	����h�o�o�!6���r"ruc����eZdZdZdd�dededededd	f
�fd
�Zdejded
edefd�Z
deeeefd	d	ffd�Z
deeefdeeeffd�Zdej fd�Zdedd	fd�Z�xZS)rjzsCustom option parser which updates its defaults by checking the
    configuration files and environmental variablesF)�isolatedr�namer�rrNc�n��||_t|�|_|jsJ�t�|�|i|��yr%)r�r�configrr)rr�r�rrr s     �r!rzConfigOptionParser.__init__�s6�����	�#�H�-����y�y��y�
���$�)�&�)r"r#�keyrsc��	|j||�S#tj$r-}td|���t	j
d�Yd}~yd}~wwxYw)Nz(An error occurred during configuration: �)�check_valuer`�OptionValueError�print�sys�exit)rr#r�rs�excs     r!�
check_defaultz ConfigOptionParser.check_default�sM��	��%�%�c�3�/�/���(�(�	��<�S�E�B�C��H�H�Q�K�K��	�s��A�#A�Ac#�^K�d|jdg}|D�cic]}|g��}}|jj�D]N\}}|stj	d|��|jdd�\}}||vs�9||j
||f��P|D]}||D]\}}||f���
�ycc}w�w)N�globalz:env:z7Ignoring configuration key '%s' as it's value is empty.�.r)r�r��items�logger�debugrYr-)r�override_orderr��
section_items�section_keyrs�sectionr�s        r!� _get_ordered_configuration_itemsz3ConfigOptionParser._get_ordered_configuration_items�s�����#�D�I�I�w�7��"0�;
�!/��D�"�H��	�;
�!%��� 1� 1� 3��K������M����&�,�,�S�!�4�L�G�S��.�(��g�&�-�-�s�C�j�9�!4�&�G�)�'�2���S��3�h��3�&��#;
�s�B-�
B(�AB-�58B-rlc	���tj|j�|_t	�}|j�D�]�\}}|j
d|z�}|��|j�J�|jdvr	t|�}�ni|jdk(rstt�5t|�}ddd�tt�5t|�}ddd�t|t�r|dkr�|j|�d|�d��n�|jd	k(r1|j�}|D�cgc]}|j!|||���}}n�|jd
k(r�|j"�J�|j%|j�|j'�}|j)||�}|j*xsd}|j,xsi}	|j"||||g|��i|	��n|j!|||�}|||j<���|D]}t/|j|�||<�d|_|S#t$r|j|�d|�d��Y�]wxYw#1swY���xYw#1swY���xYwcc}w)z�Updates the given defaults with values from the config files and
        the environ. Does a little special handling for certain types of
        options (lists).z--N)�
store_true�store_falsez is not a valid value for zO option, please specify a boolean value like yes/no, true/false or 1/0 instead.�countrz� option, please instead specify either a non-negative integer or a boolean value like yes/no or false/true which is equivalent to 1/0.r-�callbackr<)r`�Valuesrl�values�setr��
get_optionr2�actionr�
ValueError�errorrr�rirYr�r��add�get_opt_string�
convert_value�
callback_args�callback_kwargs�getattr)
rrl�	late_evalr�rsr#�v�opt_strrrs
          r!rkz#ConfigOptionParser._update_defaults�sI���o�o�d�m�m�4����E�	��=�=�?�H�C���_�_�T�C�Z�0�F�
�~���;�;�*�*�*��}�}� =�=��#�C�.�C����'�)��j�)�#�C�.�C�*��j�)��c�(�C�*�!�#�s�+�s�Q�w��J�J��%�9�#��?6�6�����(�*��i�i�k��CF�G�3�a�t�)�)�&�#�q�9�3��G����*�,����2�2�2��
�
�f�k�k�*� �/�/�1���*�*�7�C�8���+�+�1�r���/�/�5�2���������d�L�T�L�V�L��(�(���c�:��$'�H�V�[�[�!�a@�d�C�#�D�K�K��5�H�S�M��������M"���J�J��%�9�#��?5�5����*�)��)�)��Hs0�:H+�%I�I�,I+�+ I�
I�I	�I(	c�p�|jstj|j�S	|jj�|j|jj��}|j�D]k}|j�J�|j|j�}t|t�s�=|j!�}|j#||�||j<�mtj|�S#t$r)}|jtt|��Yd}~��d}~wwxYw)z�Overriding to make updating the defaults after instantiation of
        the option parser possible, _update_defaults() does the dirty work.N)�process_default_valuesr`r�rlr��loadrr�r
rbrk�copy�_get_all_optionsr2rmrir�r�)r�errrlr#�defaultr�s      r!�get_default_valuesz%ConfigOptionParser.get_default_valuess����*�*��?�?�4�=�=�1�1�	/��K�K�����(�(����);�);�)=�>���+�+�-�F��;�;�*�*�*��l�l�6�;�;�/�G��'�3�'� �/�/�1��(.�(:�(:�7�G�(L�����%�.����x�(�(��"�	/��I�I�m�S��X�.�.��	/�s�D�	D5�D0�0D5rDc�t�|jtj�|jt|�d��yrX)�print_usager��stderrr�r
)rrDs  r!r�zConfigOptionParser.error$s(��������$��	�	�-�C�5���,r")r\r]r^r_rrb�boolrr`rar�rr	r�rrkr�r�r�rcrds@r!rjrj�s����7��	*��*��*��	*�
�*�
�
*��H�O�O��#��C��C���	�5��c��?�D�$�.�	/��8>��c�3�h��>�D��c��N�>�@)�H�O�O�)�,-��-��-r"rj) r_�loggingr`rr�rB�
contextlibr�typingrrrrrr	�pip._internal.cli.status_codesr
�pip._internal.configurationrr�pip._internal.utils.miscr
r�	getLoggerr\r��IndentedHelpFormatterrrf�OptionParserrurjr<r"r!�<module>r�s�����
�
���>�>�8�I�D�	��	�	�8�	$��O$�(�8�8�O$�d�$7��@��.�.��,L-�+�L-r"

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists