<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>

Š¹¼]xE  ã               @   sB  d  d l  Z  d  d l Z d  d l Z d  d l Z d  d l Td Z e j d e ƒ Z e j d e e f ƒ Z e	 j
 d d ƒ Z Gd d	 „  d	 ƒ Z d
 d „  Z d d „  e j Dƒ Z d d „  Z d d „  Z Gd d „  d ƒ Z e d k r>d Z xK d d d d f D]7 Z e d e ƒ e d j e e e ƒ ƒ ƒ e ƒ  qWd S)é    N)Ú*z[a-zA-Z](?:[a-zA-Z0-9-]*)z^%s$z^(%s)=!(%s)$ú-Ú_c               @   sÐ   e  Z d  Z d d d „ Z d d „  Z d d „  Z d d d d	 „ Z d
 d „  Z d d „  Z d d „  Z	 d d „  Z
 d d „  Z d d „  Z d d d d „ Z d d „  Z d d d „ Z d d d d „ Z d S)ÚFancyGetoptNc             C   sq   | |  _  i  |  _ |  j  r% |  j ƒ  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   ú1/opt/alt/python35/lib64/python3.5/fancy_getopt.pyÚ__init__)   s    				
							zFancyGetopt.__init__c             C   s6   |  j  j ƒ  x" |  j D] } | |  j  | d <q Wd  S)Nr   )r   Úclearr   )r   Úoptionr   r   r   r   Q   s    zFancyGetopt._build_indexc             C   s   | |  _  |  j ƒ  d  S)N)r   r   )r   r   r   r   r   Úset_option_tableV   s    	zFancyGetopt.set_option_tablec             C   sR   | |  j  k r" t d | ƒ ‚ n, | | | f } |  j j | ƒ | |  j  | <d  S)Nz'option conflict: already an option '%s')r   ÚDistutilsGetoptErrorr   Úappend)r   Úlong_optionZshort_optionZhelp_stringr   r   r   r   Ú
add_optionZ   s    zFancyGetopt.add_optionc             C   s   | |  j  k S)N)r   )r   r   r   r   r   Ú
has_optionc   s    zFancyGetopt.has_optionc             C   s   | j  t ƒ S)N)Ú	translateÚlongopt_xlate)r   r   r   r   r   Úget_attr_nameh   s    zFancyGetopt.get_attr_namec             C   sq   xj | j  ƒ  D]\ \ } } | |  j k rA t d | | | f ƒ ‚ | |  j k r t d | | | f ƒ ‚ q Wd  S)Nz(invalid %s '%s': option '%s' not definedz0invalid %s '%s': aliased option '%s' not defined)Úitemsr   r   )r   ÚaliasesZwhatr	   Úoptr   r   r   Ú_check_alias_dictn   s    zFancyGetopt._check_alias_dictc             C   s   |  j  | d ƒ | |  _ d  S)Nr	   )r#   r	   )r   r	   r   r   r   Úset_aliasesx   s    zFancyGetopt.set_aliasesc             C   s   |  j  | d ƒ | |  _ d  S)Nznegative alias)r#   r
   )r   r
   r   r   r   Úset_negative_aliases}   s    z FancyGetopt.set_negative_aliasesc             C   su  g  |  _  g  |  _ |  j j ƒ  i  |  _ xF|  j D];} t | ƒ d k rb | \ } } } d } n: t | ƒ d k r‰ | \ } } } } n t d | f ƒ ‚ t | t	 ƒ s¾ t | ƒ d k  rÎ t
 d | ƒ ‚ | d  k pø t | t	 ƒ oø t | ƒ d k st
 d | ƒ ‚ | |  j | <|  j  j | ƒ | d d	 k rh| rH| d
 } | d d … } d |  j | <n[ |  j j | ƒ } | d  k	 r¶|  j | r©t
 d | | f ƒ ‚ | |  j  d <d |  j | <|  j j | ƒ } | d  k	 r|  j | |  j | k rt
 d | | f ƒ ‚ t j | ƒ s0t
 d | ƒ ‚ |  j | ƒ |  j | <| r2 |  j j | ƒ | |  j | d <q2 Wd  S)Né   r   é   zinvalid option tuple: %ré   z9invalid long option '%s': must be a string of length >= 2é   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   r   r   Úrepeatr   ÚlenÚ
ValueErrorÚ
isinstanceÚstrr   r   r   r
   Úgetr	   Ú
longopt_reÚmatchr   r   )r   r   ÚlongÚshortÚhelpr-   Zalias_tor   r   r   Ú_grok_option_table…   s^    				"
!
 

zFancyGetopt._grok_option_tablec             C   sì  | d  k r t  j d d  … } | d  k r= t ƒ  } d } n d } |  j ƒ  d j |  j ƒ } y" t j | | |  j ƒ \ } } Wn4 t j k
 r· } z t	 | ƒ ‚ WYd  d  } ~ Xn Xx| D]\ } } t
 | ƒ d k r| d d k r|  j | d } n | d d  … } |  j j | ƒ }	 |	 r/|	 } |  j | si|  j j | ƒ }	 |	 rc|	 } d } n d } |  j | }
 | rª|  j j |
 ƒ d  k	 rªt | |
 d ƒ d } t | |
 | ƒ |  j j | | f ƒ q¿ W| rä| | f S| Sd  S)Nr)   TFú r(   r   r   )ÚsysÚargvÚOptionDummyr8   Újoinr   Úgetoptr   ÚerrorZDistutilsArgErrorr.   r   r	   r2   r   r
   r   r-   ÚgetattrÚsetattrr   r   )r   ÚargsÚobjectZcreated_objectr   ZoptsÚmsgr"   Úvalr	   Úattrr   r   r   r>   Ò   sB    		
""	
zFancyGetopt.getoptc             C   s)   |  j  d  k r t d ƒ ‚ n |  j  Sd  S)Nz!'getopt()' hasn't been called yet)r   ÚRuntimeError)r   r   r   r   Úget_option_order  s    zFancyGetopt.get_option_orderc             C   sä  d } xs |  j  D]h } | d } | d } t | ƒ } | d d k rP | d } | d  k	 rf | d } | | k r | } q W| d d d } d } | | }	 d | }
 | rº | g } n	 d g } x|  j  D]} | d  d	 … \ } } } t | |	 ƒ } | d d k r| d d … } | d  k rh| rN| j d
 | | | d f ƒ q°| j d | | f ƒ nH d | | f } | rŸ| j d
 | | | d f ƒ n | j d | ƒ x) | d d  … D] } | j |
 | ƒ qÁWqÍ W| S)Nr   r)   r*   é   r(   éN   r9   zOption summary:r&   z  --%-*s  %sz
  --%-*s  z%s (-%s)z  --%-*sr,   r,   r,   )r   r.   Ú	wrap_textr   )r   ÚheaderZmax_optr   r5   r6   ÚlZ	opt_widthZ
line_widthÚ
text_widthZ
big_indentÚlinesr7   ÚtextZ	opt_namesr   r   r   Úgenerate_help  sF    






	!	zFancyGetopt.generate_helpc             C   sD   | d  k r t  j } x( |  j | ƒ D] } | j | d ƒ q% Wd  S)NÚ
)r:   ÚstdoutrQ   Úwrite)r   rL   ÚfileÚliner   r   r   Ú
print_helph  s    	zFancyGetopt.print_help)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r#   r$   r%   r8   r>   rH   rQ   rW   r   r   r   r   r      s   (	
M=
Or   c             C   s)   t  |  ƒ } | j | ƒ | j | | ƒ S)N)r   r%   r>   )ÚoptionsZnegative_optrC   rB   Úparserr   r   r   Úfancy_getopto  s    r]   c             C   s   i  |  ] } d  t  | ƒ “ q S)r9   )Úord)Ú.0Z_wscharr   r   r   ú
<dictcomp>u  s   	 r`   c             C   sv  |  d  k r g  St  |  ƒ | k r) |  g S|  j ƒ  }  |  j t ƒ }  t j d |  ƒ } d d „  | Dƒ } g  } x | rqg  } d } xq | r÷ t  | d ƒ } | | | k rÒ | j | d ƒ | d =| | } q‡ | ró | d d d k ró | d	 =Pq‡ W| rX| d k r=| j | d d | … ƒ | d | d  … | d <| d d d k rX| d =| j d j | ƒ ƒ qr W| S)
Nz( +|-+)c             S   s   g  |  ] } | r | ‘ q Sr   r   )r_   Zchr   r   r   ú
<listcomp>…  s   	 zwrap_text.<locals>.<listcomp>r   r)   r9   Ú r,   r,   )r.   Ú
expandtabsr   ÚWS_TRANSÚreÚsplitr   r=   )rP   ÚwidthÚchunksrO   Úcur_lineÚcur_lenrM   r   r   r   rK   w  s:    		rK   c             C   s   |  j  t ƒ S)N)r   r   )r"   r   r   r   Útranslate_longopt­  s    rk   c               @   s   e  Z d  Z g  d d „ Z d S)r<   c             C   s%   x | D] } t  |  | d  ƒ q Wd  S)N)rA   )r   r[   r"   r   r   r   r   ¸  s    zOptionDummy.__init__N)rX   rY   rZ   r   r   r   r   r   r<   ´  s   r<   Ú__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: %drR   )r:   Ústringre   r>   Zdistutils.errorsZlongopt_patÚcompiler3   Zneg_alias_rer1   Ú	maketransr   r   r]   Ú
whitespacerd   rK   rk   r<   rX   rP   ÚwÚprintr=   r   r   r   r   Ú<module>   s&   $
ÿ S6