509318396
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
3

  \xE  ã               @   sà   d dl Z d dlZd dlZd dlZd dlT dZejde ƒZejdeef ƒZe	j
ddƒZG dd	„ d	ƒZd
d„ Zdd„ ejD ƒZdd„ Zdd„ ZG dd„ dƒZedkrÜdZx2dD ]*Zede ƒ edjeeeƒƒƒ eƒ  q®W d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	„Zd
d„ Zdd„ Zdd„ Z	dd„ Z
dd„ Zdd„ Zd dd„Zdd„ Zd!dd„Zd"dd„ZdS )#ÚFancyGetoptNc             C   sN   || _ 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   ú./usr/lib64/python3.6/distutils/fancy_getopt.pyÚ__init__)   s    	zFancyGetopt.__init__c             C   s,   | j jƒ  x| jD ]}|| j |d < qW d 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   s<   || 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   sR   xL|j ƒ D ]@\}}|| jkr.td|||f ƒ‚|| jkr
td|||f ƒ‚q
W d 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   sÖ  g | _ g | _| jjƒ  i | _�x²| jD �]¦}t|ƒdkrH|\}}}d}n(t|ƒdkrb|\}}}}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�r|rî|d
 }|dd… }d| j|< nF| jj|ƒ}|d k	�rB| j| �r8t
d||f ƒ‚|| j d< d| j|< | jj|ƒ}|d k	�rˆ| j| | j| k�rˆt
d||f ƒ‚tj|ƒ�s t
d| ƒ‚| j|ƒ| j|< |r&| jj|ƒ || j|d < q&W d 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   sr  |d krt jdd … }|d kr*tƒ }d}nd}| jƒ  dj| jƒ}ytj||| jƒ\}}W n, tjk
r† } zt	|ƒ‚W Y d d }~X nX xÒ|D ]Ê\}}t
|ƒdkr¾|d dkr¾| j|d  }n|dd … }| jj|ƒ}	|	rÞ|	}| j| �s
| jj|ƒ}	|	�r|	}d}nd}| j| }
|�r<| jj|
ƒd k	�r<t||
dƒd }t||
|ƒ | jj||fƒ qŽW |�rj||fS |S d 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 S d S )Nz!'getopt()' hasn't been called yet)r   ÚRuntimeError)r   r   r   r   Úget_option_order  s    

zFancyGetopt.get_option_orderc             C   sx  d}xV| j D ]L}|d }|d }t|ƒ}|d dkr<|d }|d k	rL|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�r|� rü|jd
|||d f ƒ n|jd||f ƒ n:d||f }|�r<|jd
|||d f ƒ n|jd| ƒ x$|dd … D ]}|j|
| ƒ �qXW qš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_widthZ
text_widthZ
big_indentÚlinesr7   ÚtextZ	opt_namesr   r   r   Úgenerate_help  sF    

zFancyGetopt.generate_helpc             C   s4   |d krt j}x | j|ƒD ]}|j|d ƒ qW d S )NÚ
)r:   ÚstdoutrP   Úwrite)r   rL   ÚfileÚliner   r   r   Ú
print_helph  s    zFancyGetopt.print_help)N)NN)NN)N)NN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r#   r$   r%   r8   r>   rH   rP   rV   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   s"  | d krg S t | ƒ|kr| gS | jƒ } | jtƒ} tjd| ƒ}dd„ |D ƒ}g }xÎ|�rg }d}xZ|r¸t |d ƒ}|| |krš|j|d ƒ |d= || }q`|r´|d d dkr´|d	= P q`W |�r
|dkrò|j|d d|… ƒ |d |d … |d< |d d dk�r
|d= |jdj|ƒƒ qPW |S )
Nz( +|-+)c             S   s   g | ]}|r|‘qS r   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=   )rO   ÚwidthZchunksrN   Zcur_lineZ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    rg   c               @   s   e Zd Zg fdd„ZdS )r<   c             C   s   x|D ]}t | |d ƒ qW d S )N)rA   )r   rZ   r"   r   r   r   r   ¸  s    
zOptionDummy.__init__N)rW   rX   rY   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: %drQ   )ri   rj   rk   rl   )r:   Ústringrd   r>   Zdistutils.errorsZlongopt_patÚcompiler3   Zneg_alias_rer1   Ú	maketransr   r   r\   Z
whitespacerc   rK   rg   r<   rW   rO   ÚwÚprintr=   r   r   r   r   Ú<module>   s(     T6
