File manager - Edit - /usr/lib/python3.10/distutils/__pycache__/fancy_getopt.cpython-310.pyc
Back
o ������bcxE����������������������@���s����d�Z�ddlZddlZddlZddlZddlT�dZe�de��Ze�deef��Z e �dd�ZG�d d ��d �Z dd��Zd d��ejD��Zdd��Zdd��ZG�dd��d�ZedkrndZdD�]Zede���ed�eee����e���qXdS�dS�)a6��distutils.fancy_getopt Wrapper around the standard getopt module that provides the following additional features: * short and long options are tied together * options have help strings, so fancy_getopt could potentially create a complete usage summary * options set attributes of a passed-in object �����N)�*z[a-zA-Z](?:[a-zA-Z0-9-]*)z^%s$z^(%s)=!(%s)$�-�_c�������������������@���s����e�Zd�ZdZddd�Zdd��Zdd��Zd d d �Zdd��Zd d��Z dd��Z dd��Zdd��Zdd��Z d dd�Zdd��Zddd�Zd dd�ZdS�)!�FancyGetopta���Wrapper around the standard 'getopt()' module that provides some handy extra functionality: * short and long options are tied together * options have help strings, and help text can be assembled from them * options set attributes of a passed-in object * boolean options can have "negative aliases" -- eg. if --quiet is the "negative alias" of --verbose, then "--quiet" on the command line sets 'verbose' to false Nc�����������������C���sN���||�_�i�|�_|�j�r |�����i�|�_i�|�_g�|�_g�|�_i�|�_i�|�_i�|�_ g�|�_ d�S��N)�option_table�option_index�_build_index�alias�negative_alias� short_opts� long_opts� short2long� attr_name� takes_arg�option_order��selfr�����r����-/usr/lib/python3.10/distutils/fancy_getopt.py�__init__)���s��� zFancyGetopt.__init__c�����������������C���s(���|�j�����|�jD�] }||�j�|d�<�qd�S�)Nr���)r����clearr���)r����optionr���r���r���r ���Q���s��� �zFancyGetopt._build_indexc�����������������C���s���||�_�|�����d�S�r���)r���r ���r���r���r���r����set_option_tableV���s���zFancyGetopt.set_option_tablec�����������������C���s:���||�j�v�rtd|���|||f}|�j�|��||�j�|<�d�S�)Nz'option conflict: already an option '%s')r����DistutilsGetoptErrorr����append)r����long_option�short_option�help_stringr���r���r���r���� add_optionZ���s��� � zFancyGetopt.add_optionc�����������������C���s ���||�j�v�S�)zcReturn true if the option table for this parser has an option with long name 'long_option'.)r����r���r���r���r���r���� has_optionc���s��� zFancyGetopt.has_optionc�����������������C���s ���|��t�S�)z�Translate long option name 'long_option' to the form it has as an attribute of some object: ie., translate hyphens to underscores.�� translate� longopt_xlater ���r���r���r���� get_attr_nameh������� zFancyGetopt.get_attr_namec�����������������C���s\���t�|t�sJ��|���D�] \}}||�jvrtd|||f���||�jvr+td|||f���qd�S�)Nz(invalid %s '%s': option '%s' not definedz0invalid %s '%s': aliased option '%s' not defined)� isinstance�dict�itemsr���r���)r����aliases�whatr ����optr���r���r����_check_alias_dictn���s��� � ���zFancyGetopt._check_alias_dictc�����������������C�������|���|d��||�_dS�)z'Set the aliases for this option parser.r ���N)r-���r ���)r���r ���r���r���r����set_aliasesx���s��� zFancyGetopt.set_aliasesc�����������������C���r.���)z�Set the negative aliases for this option parser. 'negative_alias' should be a dictionary mapping option names to option names, both the key and value must already be defined in the option table.znegative aliasN)r-���r���)r���r���r���r���r����set_negative_aliases}���s��� z FancyGetopt.set_negative_aliasesc�����������������C���s���g�|�_�g�|�_|�j����i�|�_|�jD�]�}t|�dkr!|\}}}d}nt|�dkr.|\}}}}ntd|f���t|t �r@t|�dk�rFt d|���|du�s[t|t �rUt|�dks[t d |���||�j|<�|�j��|��|d �dkr~|rr|d�}|dd ��}d|�j|<�n!|�j �|�}|dur�|�j|�r�t d ||f���||�j�d <�d|�j|<�|�j�|�}|dur�|�j|�|�j|�kr�t d||f���t�|�s�t d|���|��|�|�j|<�|r�|�j�|��||�j|d�<�qdS�)z�Populate the various data structures that keep tabs on the option table. Called by 'getopt()' before it can do anything worthwhile. ����r�������zinvalid option tuple: %r����z9invalid long option '%s': must be a string of length >= 2N����z:invalid short option '%s': must a single character or None����=�:z>invalid negative alias '%s': aliased option '%s' takes a valuezginvalid alias '%s': inconsistent with aliased option '%s' (one of them takes a value, the other doesn'tzEinvalid long option name '%s' (must be letters, numbers, hyphens only)r ���r���r���r����repeatr����len� ValueErrorr'����strr���r���r���r����getr ���� longopt_re�matchr%���r���)r���r����long�short�helpr8����alias_tor���r���r����_grok_option_table����st��� ��� �� �� ����zFancyGetopt._grok_option_tablec�������������� ���C���s���|du�rt�jdd��}|du�rt��}d}nd}|�����d�|�j�}zt�|||�j�\}}W�n�tjy>�}�zt |��d}~ww�|D�]y\}}t |�dkrY|d�dkrY|�j|d��}nt |�dkrg|dd��d ksiJ��|dd��}|�j� |�} | ry| }|�j|�s�|d ks�J�d��|�j� |�} | r�| }d}nd}|�j|�} |r�|�j� | �dur�t|| d�d�}t|| |��|�j�||f��qA|r�||fS�|S�)a��Parse command-line options in args. Store as attributes on object. If 'args' is None or not supplied, uses 'sys.argv[1:]'. If 'object' is None or not supplied, creates a new OptionDummy object, stores option values there, and returns a tuple (args, object). If 'object' is supplied, it is modified in place and 'getopt()' just returns 'args'; in both cases, the returned 'args' is a modified copy of the passed-in 'args' list, which is left untouched. Nr4���TF� r3���r���r���z--��zboolean option can't have value)�sys�argv�OptionDummyrC����joinr����getoptr ����error�DistutilsArgErrorr9���r���r ���r<���r���r���r���r8����getattr�setattrr���r���)r����args�object�created_objectr����opts�msgr,����valr ����attrr���r���r���rJ�������sJ����� zFancyGetopt.getoptc�����������������C���s���|�j�du�r td��|�j�S�)z�Returns the list of (option, value) tuples processed by the previous run of 'getopt()'. Raises RuntimeError if 'getopt()' hasn't been called yet. Nz!'getopt()' hasn't been called yet)r����RuntimeError)r���r���r���r����get_option_order��s��� zFancyGetopt.get_option_orderc�����������������C���sd��d}|�j�D�]&}|d�}|d�}t|�}|d�dkr|d�}|dur%|d�}||kr+|}q|d�d�d�}d}||�} d |�} |rD|g}nd g}|�j�D�]e}|dd��\}}}t|| �} |d�dkrf|dd��}|du�r�| ry|�d||| d�f���n&|�d ||f���nd||f�}| r�|�d||| d�f���n|�d|���| dd��D�] }|�| |���q�qJ|S�)z�Generate help text (a list of strings, one per suggested line of output) from the option table for this FancyGetopt object. r���r4���r5���r6���N����r3����N���rD���zOption summary:r1���z --%-*s %sz --%-*s z%s (-%s)z --%-*s)r���r9���� wrap_textr���)r����header�max_optr���r?���r@����l� opt_width� line_width� text_width� big_indent�linesrA����text� opt_namesr���r���r���� generate_help��sL��� � ��zFancyGetopt.generate_helpc�����������������C���s0���|d�u�rt�j}|��|�D�] }|�|d���qd�S�)N� )rF����stdoutre����write)r���r[����file�liner���r���r���� print_helph��s ����zFancyGetopt.print_helpr���)NN)�__name__� __module__�__qualname__�__doc__r���r ���r���r���r!���r%���r-���r/���r0���rC���rJ���rW���re���rk���r���r���r���r���r������s ���� ( M= Or���c�����������������C���s���t�|��}|�|��|�||�S�r���)r���r0���rJ���)�options�negative_optrP���rO����parserr���r���r����fancy_getopto��s��� rs���c�����������������C���s���i�|�]}t�|�d��qS�)rD���)�ord)�.0�_wscharr���r���r���� <dictcomp>u��s����rw���c�����������������C���s��|�du�rg�S�t�|��|kr|�gS�|����}�|��t�}�t�d|��}dd��|D��}g�}|r�g�}d}|rZt�|d��}||�|krJ|�|d���|d=�||�}n|rW|d�d�dkrW|d=�n|s/|r�|dkru|�|d�d|����|d�|d��|d<�|d�d�dkr�|d=�|�d�|���|s)|S�) z�wrap_text(text : string, width : int) -> [string] Split 'text' into multiple lines of no more than 'width' characters each, and return the list of strings that results. Nz( +|-+)c�����������������S���s���g�|�]}|r|�qS�r���r���)ru����chr���r���r���� <listcomp>���s����zwrap_text.<locals>.<listcomp>r���r5���rD���rE���)r9���� expandtabsr#����WS_TRANS�re�splitr���rI���)rc����width�chunksrb����cur_line�cur_lenr]���r���r���r���rZ���w��s>��� ��"rZ���c�����������������C���s ���|���t�S�)zXConvert a long option name to a valid Python identifier by changing "-" to "_". r"���)r,���r���r���r����translate_longopt���r&���r����c�������������������@���s���e�Zd�ZdZg�fdd�ZdS�)rH���z_Dummy class just used as a place to hold command-line option values as instance attributes.c�����������������C���s���|D�]}t�|�|d��qdS�)zkCreate a new OptionDummy instance. The attributes listed in 'options' will be initialized to None.N)rN���)r���rp���r,���r���r���r���r������s����zOptionDummy.__init__N)rl���rm���rn���ro���r���r���r���r���r���rH������s����rH����__main__z�Tra-la-la, supercalifragilisticexpialidocious. How *do* you spell that odd word, anyways? (Someone ask Mary -- she'll know [or she'll say, "How should I know?"].))� ������������(���z width: %drf���)ro���rF����stringr|���rJ����distutils.errors�longopt_pat�compiler=����neg_alias_rer;���� maketransr$���r���rs���� whitespacer{���rZ���r����rH���rl���rc����w�printrI���r���r���r���r����<module>���s0���� ��T6�
| ver. 1.4 |
Github
|
.
| PHP 8.2.28 | Generation time: 0.04 |
proxy
|
phpinfo
|
Settings