Viewing File: /opt/alt/python35/lib64/python3.5/__pycache__/optparse.cpython-35.opt-2.pyc



]@sdZddddddddd	d
ddd
dddgZdZddlZddlZddlZddZyddlmZmZWn*e	k
rddZddZYnXeZ
GdddeZGdd
d
eZ
Gddde
ZGdddeZGdddeZGd d!d!eZGd"d	d	ZGd#d
d
eZGd$ddeZd%d&Zd'd(Zd)ee
d*fd+ee
d*fd,ee
d-fd.ee
d.fiZd/d0Zd1d2Zd3d4fZGd5ddZd6d7Zd6d8ZGd9ddZ Gd:ddZ!Gd;dde!Z"Gd<dde!Z#d=d>Z$eZ%dS)?z1.5.3Optionmake_option
SUPPRESS_HELPSUPPRESS_USAGEValuesOptionContainerOptionGroupOptionParser
HelpFormatterIndentedHelpFormatterTitledHelpFormatter
OptParseErrorOptionErrorOptionConflictErrorOptionValueErrorBadOptionErrora"
Copyright (c) 2001-2006 Gregory P. Ward.  All rights reserved.
Copyright (c) 2002-2006 Python Software Foundation.  All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

  * Redistributions of source code must retain the above copyright
    notice, this list of conditions and the following disclaimer.

  * Redistributions in binary form must reproduce the above copyright
    notice, this list of conditions and the following disclaimer in the
    documentation and/or other materials provided with the distribution.

  * Neither the name of the author nor the names of its
    contributors may be used to endorse or promote products derived from
    this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
NcCsd|jjt||fS)Nz<%s at 0x%x: %s>)	__class____name__id)selfr-/opt/alt/python35/lib64/python3.5/optparse.py_reprNsr)gettextngettextcCs|S)Nr)messagerrrr[srcCs|dkr|S|S)Nr)Zsingularpluralnrrrr^src@s(eZdZddZddZdS)rcCs
||_dS)N)msg)rrrrr__init__gszOptParseError.__init__cCs|jS)N)r)rrrr__str__jszOptParseError.__str__N)r
__module____qualname__r r!rrrrrfsc@s(eZdZddZddZdS)r
cCs||_t||_dS)N)rstr	option_id)rroptionrrrr ts	zOptionError.__init__cCs(|jrd|j|jfS|jSdS)Nz
option %s: %s)r%r)rrrrr!xs	zOptionError.__str__N)rr"r#r r!rrrrr
nsc@seZdZdS)rN)rr"r#rrrrr~sc@seZdZdS)rN)rr"r#rrrrrsc@s(eZdZddZddZdS)rcCs
||_dS)N)opt_str)rr'rrrr szBadOptionError.__init__cCstd|jS)Nzno such option: %s)_r')rrrrr!szBadOptionError.__str__N)rr"r#r r!rrrrrsc@s(eZdZddZddZdS)AmbiguousOptionErrorcCstj||||_dS)N)rr 
possibilities)rr'r*rrrr szAmbiguousOptionError.__init__cCs#td|jdj|jfS)Nzambiguous option: %s (%s?)z, )r(r'joinr*)rrrrr!s	zAmbiguousOptionError.__str__N)rr"r#r r!rrrrr)sr)c@seZdZdZddZddZddZdd	Zd
dZdd
Z	ddZ
ddZddZddZ
ddZddZddZddZddZd S)!r	ZnonecCsd|_||_|dkr`yttjd}Wnttfk
rUd}YnX|d8}||_t|t	|d|d|_
|_d|_d|_
d|_||_d|_i|_d|_d|_dS)	NCOLUMNSPrz%defaultz%s %sz%s=%s)parserindent_incrementintosenvironKeyError
ValueErrorwidthminmax
help_positionmax_help_positioncurrent_indentlevel
help_widthshort_firstdefault_tagoption_strings_short_opt_fmt
_long_opt_fmt)rr1r;r7r?rrrr s$		
	*							zHelpFormatter.__init__cCs
||_dS)N)r0)rr0rrr
set_parserszHelpFormatter.set_parsercCs1|dkrtd|d|d|_dS)N z/invalid metavar delimiter for short options: %rz%s)rErF)r6rB)rdelimrrrset_short_opt_delimiters
z%HelpFormatter.set_short_opt_delimitercCs1|dkrtd|d|d|_dS)N=rFz.invalid metavar delimiter for long options: %rz%s)rIrF)r6rC)rrGrrrset_long_opt_delimiters
z$HelpFormatter.set_long_opt_delimitercCs%|j|j7_|jd7_dS)Nr)r<r1r=)rrrrindentszHelpFormatter.indentcCs%|j|j8_|jd8_dS)Nr)r<r1r=)rrrrdedentszHelpFormatter.dedentcCstddS)Nzsubclasses must implement)NotImplementedError)rusagerrrformat_usageszHelpFormatter.format_usagecCstddS)Nzsubclasses must implement)rM)rheadingrrrformat_headingszHelpFormatter.format_headingcCsBt|j|jd}d|j}tj||d|d|S)NrFinitial_indentsubsequent_indent)r9r7r<textwrapfill)rtext
text_widthrKrrr_format_texts
	zHelpFormatter._format_textcCs|r|j|dSdSdS)N
rE)rY)rdescriptionrrrformat_descriptionsz HelpFormatter.format_descriptioncCs#|rd|j|dSdSdS)NrZrE)rY)repilogrrr
format_epilogszHelpFormatter.format_epilogcCsu|jdks|jr |jS|jjj|j}|tksP|dkrY|j}|jj|jt	|S)N)
r0r@helpdefaultsgetdest
NO_DEFAULTNO_DEFAULT_VALUEreplacer$)rr&Z
default_valuerrrexpand_defaults	zHelpFormatter.expand_defaultcs)g}j|}jjd}t||kr[djd|f}j}ndjd||f}d}|j||jrj|}tj|j	}|jd|d|df|j
fdd|ddDn|d
d	kr|jd	dj|S)Nr.z%*s%s
rEz	%*s%-*s  rcs&g|]}djd|fqS)z%*s%s
rE)r:).0line)rrr
<listcomp>Ds	z/HelpFormatter.format_option.<locals>.<listcomp>rrZ)rAr:r<lenappendr_rfrUwrapr>extendr+)rr&resultoptsZ	opt_widthindent_first	help_text
help_linesr)rr
format_option's$

	
zHelpFormatter.format_optioncCs|jd}xI|jD]>}|j|}||j|<t|t||j}qW|jx]|jD]R}xI|jD]>}|j|}||j|<t|t||j}qWqpW|j|jt	|d|j
|_t|j|jd|_
dS)Nrr.rR)rKoption_listformat_option_stringsrAr9rkr<
option_groupsrLr8r;r:r7r>)rr0Zmax_lenoptstringsgrouprrrstore_option_stringsJs 

 

$

z"HelpFormatter.store_option_stringscs|jre|jp!|jjfdd|jD}fdd|jD}n|j}|j}jr||}n
||}dj|S)Ncs#g|]}j|fqSr)rB)rgZsopt)metavarrrrri`s	z7HelpFormatter.format_option_strings.<locals>.<listcomp>cs#g|]}j|fqSr)rC)rgZlopt)r|rrrribs	z, )takes_valuer|rbupper_short_opts
_long_optsr?r+)rr&Z
short_optsZ	long_optsrpr)r|rrrv\s
			

z#HelpFormatter.format_option_stringsN)rr"r#rdr rDrHrJrKrLrOrQrYr\r^rfrtr{rvrrrrr	s +
#c@s@eZdZddddddZddZd	d
ZdS)r
r.NrcCstj|||||dS)N)r	r )rr1r;r7r?rrrr sszIndentedHelpFormatter.__init__cCstd|S)Nz
Usage: %s
)r()rrNrrrrO{sz"IndentedHelpFormatter.format_usagecCsd|jd|fS)Nz%*s%s:
rE)r<)rrPrrrrQ~sz$IndentedHelpFormatter.format_heading)rr"r#r rOrQrrrrr
osc@s@eZdZddddddZddZdd	ZdS)
rrrNcCstj|||||dS)N)r	r )rr1r;r7r?rrrr szTitledHelpFormatter.__init__cCsd|jtd|fS)Nz%s  %s
ZUsage)rQr()rrNrrrrOsz TitledHelpFormatter.format_usagecCsd|d|jt|fS)Nz%s
%s
z=-)r=rk)rrPrrrrQsz"TitledHelpFormatter.format_heading)rr"r#r rOrQrrrrrscCs|ddjdkr%d}n`|ddjdkr`d}|ddpZd}n%|dddkrd}nd}|||S)	Nr.0xZ0b0r
)lower)valtyperadixrrr
_parse_nums		rcCs
t|tS)N)rr2)rrrr
_parse_intsrr2Zintegerlongfloatzfloating-pointcomplexcCsYt|j\}}y||SWn1tk
rTttd|||fYnXdS)Nzoption %s: invalid %s value: %r)_builtin_cvtrr6rr()r&rxvalueZcvtZwhatrrr
check_builtins
rcCsQ||jkr|Sdjtt|j}ttd|||fdS)Nz, z.option %s: invalid choice: %r (choose from %s))choicesr+mapreprrr()r&rxrrrrrcheck_choices	rZNOZDEFAULTc@seZdZddddddddd	d
ddgZd@ZdAZdBZdCZdDZdEZ	de
de
de
de
deiZdZ
ddZddZd d!Zd"d#Zd$d%Zd&d'Zd(d)Zd*d+Zd,d-Zd.d/Zd0d1ZeeeeeeegZ
d2d3ZeZd4d5Zd6d7Zd8d9Zd:d;Zd<d=Z d>d?Z!dS)Fractionrrbdefaultnargsconstrcallback
callback_argscallback_kwargsr_r|storestore_const
store_truestore_falserlappend_constcountversionstringr2rrrchoiceNcOs]g|_g|_|j|}|j||j|x|jD]}||qEWdS)N)rr_check_opt_strings_set_opt_strings
_set_attrs
CHECK_METHODS)rrpattrscheckerrrrr 3s		

zOption.__init__cCs)dd|D}|s%td|S)NcSsg|]}|r|qSrr)rgrxrrrriJs	z-Option._check_opt_strings.<locals>.<listcomp>z+at least one option string must be supplied)	TypeError)rrprrrrFszOption._check_opt_stringscCsx|D]}t|dkr5td||qt|dkr|ddkod|ddksztd|||jj|q|dddko|ddkstd|||jj|qWdS)	Nr.z>invalid option string %r: must be at least two characters longr-rzMinvalid short option string %r: must be of the form -x, (x any non-dash char)z--zGinvalid long option string %r: must start with --, followed by non-dash)rkr
rrlr)rrprxrrrrOs$
 	&	zOption._set_opt_stringscCsxj|jD]_}||kr:t||||||=q
|dkrYt||tq
t||dq
W|rt|j}tddj||dS)Nrzinvalid keyword arguments: %sz, )ATTRSsetattrrcsortedkeysr
r+)rrattrrrrrds
zOption._set_attrscCsG|jdkrd|_n(|j|jkrCtd|j|dS)Nrzinvalid action: %r)rACTIONSr
)rrrr
_check_actionwszOption._check_actioncCs|jdkrH|j|jkr|jdk	r<d|_qd|_nt|jtri|jj|_|jdkrd|_|j|jkrtd|j||j|jkrtd|j|dS)Nrrr$zinvalid option type: %rz$must not supply a type for action %r)	rrALWAYS_TYPED_ACTIONSr
isinstancerTYPESr

TYPED_ACTIONS)rrrr_check_type}s	zOption._check_typecCs|jdkrz|jdkr0td|qt|jttfstdtt|jjdd|n%|jdk	rtd|j|dS)Nrz/must supply a list of choices for type 'choice'z1choices must be a list of strings ('%s' supplied)'rz#must not supply choices for type %r)rrr
rtuplelistr$split)rrrr
_check_choices,zOption._check_choicecCs|j|jkp|jdk	}|jdkr||r||jrh|jdddjdd|_n|jdd|_dS)Nrr.rr(r)r
STORE_ACTIONSrrbrrer)rr}rrr_check_dests	)zOption._check_destcCs;|j|jkr7|jdk	r7td|j|dS)Nz*'const' must not be supplied for action %r)r
CONST_ACTIONSrr
)rrrr_check_consts!
zOption._check_constcCsV|j|jkr-|jdkrRd|_n%|jdk	rRtd|j|dS)Nrz*'nargs' must not be supplied for action %r)rrrr
)rrrr_check_nargss
zOption._check_nargscCs|jdkrt|js4td|j||jdk	rlt|jtrltd|j||jdk	rt|jtrtd|j|na|jdk	rtd|j||jdk	rtd||jdk	rtd|dS)Nrzcallback not callable: %rz3callback_args, if supplied, must be a tuple: not %rz4callback_kwargs, if supplied, must be a dict: not %rz.callback supplied (%r) for non-callback optionz.callback_args supplied for non-callback optionz0callback_kwargs supplied for non-callback option)	rcallablerr
rrrrdict)rrrr_check_callbacks0zOption._check_callbackcCsdj|j|jS)N/)r+rr)rrrrr!szOption.__str__cCs
|jdk	S)N)r)rrrrr}szOption.takes_valuecCs#|jr|jdS|jdSdS)Nr)rr)rrrrget_opt_strings	zOption.get_opt_stringcCs9|jj|j}|dkr%|S||||SdS)N)TYPE_CHECKERrar)rrxrrrrrcheck_valueszOption.check_valuecsO|dk	rKjdkr+j|Stfdd|DSdS)Nrcs"g|]}j|qSr)r)rgv)rxrrrris	z(Option.convert_value.<locals>.<listcomp>)rrr)rrxrr)rxrr
convert_valueszOption.convert_valuecCs4|j||}|j|j|j||||S)N)rtake_actionrrb)rrxrvaluesr0rrrprocessszOption.processc	Cs|dkrt|||n|dkrAt|||jnb|dkr`t||dnC|dkrt||dn$|dkr|j|gj|n|dkr|j|gj|jn|d	krt|||j|d
dn|dkrJ|jpf}|jp(i}|j||||||nY|d
krm|j|jn6|dkr|j	|jnt
d|jdS)NrrrTrFrlrrrrrr_rzunknown action %r)rrensure_valuerlrrr
print_helpexit
print_versionr6r)	rrrbrxrrr0argskwargsrrrrs4#



zOption.take_action)
rrrrrlrrrr_r)rrrrrlrr)rrlr)rrl)rr)rr2rrrr)"rr"r#rrrrrrrrrrrr rrrrrrrrrrr!r__repr__r}rrrrrrrrrrs		
			SUPPRESSZHELPZUSAGEc@seZdZdddZddZeZddZdd	Zd
dZ	dd
Z
dddZdddZddZ
dS)rNcCs7|r3x*|jD]\}}t|||qWdS)N)itemsr)rr`rrrrrr 8szValues.__init__cCs
t|jS)N)r$__dict__)rrrrr!=szValues.__str__cCsCt|tr|j|jkSt|tr;|j|kStSdS)N)rrrrNotImplemented)rotherrrr__eq__Bs

z
Values.__eq__cCsMxFt|D]8}||kr
||}|dk	r
t|||q
WdS)N)dirr)rrrZdvalrrr_update_carefulJs

zValues._update_carefulcCs|jj|dS)N)rupdate)rrrrr
_update_looseWszValues._update_loosecCsL|dkr|j|n,|dkr8|j|ntd|dS)NcarefulZloosezinvalid update mode: %r)rrr6)rrmoderrr_update_s
zValues._updatercCs1t|tj|}|jt||dS)N)
__import__sysmodulesrvars)rmodnamermodrrrread_modulegs

zValues.read_modulecCs3i}tt|j||j||dS)N)execopenreadr)rfilenamerrrrr	read_filelszValues.read_filecCsBt||s%t||dkr5t|||t||S)N)hasattrgetattrr)rrrrrrrqs%zValues.ensure_value)rr"r#r r!rrrrrrrrrrrrrr6s
c@seZdZddZddZddZddZd	d
ZddZd
dZ	ddZ
ddZddZddZ
ddZddZddZddZdd Zd!S)"rcCs1|j||_|j||j|dS)N)_create_option_listoption_classset_conflict_handlerset_description)rrconflict_handlerr[rrrr s
	
zOptionContainer.__init__cCsi|_i|_i|_dS)N)
_short_opt	_long_optr`)rrrr_create_option_mappingss		z'OptionContainer._create_option_mappingscCs(|j|_|j|_|j|_dS)N)rrr`)rr0rrr_share_option_mappingssz&OptionContainer._share_option_mappingscCs)|dkrtd|||_dS)Nerrorresolvez$invalid conflict_resolution value %r)rr)r6r)rhandlerrrrrsz$OptionContainer.set_conflict_handlercCs
||_dS)N)r[)rr[rrrrszOptionContainer.set_descriptioncCs|jS)N)r[)rrrrget_descriptionszOptionContainer.get_descriptioncCs|`|`|`dS)N)rrr`)rrrrdestroyszOptionContainer.destroycCsYg}x:|jD]/}||jkr|j||j|fqWx:|jD]/}||jkrM|j||j|fqMW|rU|j}|dkrtddjdd|D|n|dkrUx|D]w\}}|jdr|jj	||j|=n|jj	||j|=|jp;|js|j
jj	|qWdS)Nrz conflicting option string(s): %sz, cSsg|]}|dqS)rr)rgcorrrris	z3OptionContainer._check_conflict.<locals>.<listcomp>rz--)rrrlrrrrr+
startswithremove	containerru)rr&Z
conflict_optsrxrZc_optionrrr_check_conflicts.	

zOptionContainer._check_conflictcOs;t|dtr(|j||}nQt|dkrm|rm|d}t|tsytd|ntd|j||jj|||_	x|j
D]}||j|<qWx|jD]}||j
|<qW|jdk	r7|jtk	r|j|j|j<n"|j|jkr7d|j|j<|S)Nrrznot an Option instance: %rzinvalid arguments)rr$rrkrrrrurlrrrrrrbrrcr`)rrrr&rxrrr
add_options(

	zOptionContainer.add_optioncCs"x|D]}|j|qWdS)N)r)rrur&rrradd_optionss
zOptionContainer.add_optionscCs"|jj|p!|jj|S)N)rrar)rr'rrr
get_optionszOptionContainer.get_optioncCs||jkp||jkS)N)rr)rr'rrr
has_option
szOptionContainer.has_optioncCs|jj|}|dkr0|jj|}|dkrLtd|x|jD]}|j|=qVWx|jD]}|j|=qtW|jjj|dS)Nzno such option %r)	rrarr6rrrrur)rr'r&rxrrr
remove_optionszOptionContainer.remove_optioncCsY|js
dSg}x6|jD]+}|jtk	r|j|j|qWdj|S)NrE)rur_rrlrtr+)r	formatterror&rrrformat_option_helps	z"OptionContainer.format_option_helpcCs|j|jS)N)r\r)rrrrrr\'sz"OptionContainer.format_descriptioncCsQg}|jr%|j|j||jrD|j|j|dj|S)NrZ)r[rlr\rurr+)rrrorrrformat_help*s		zOptionContainer.format_helpN)rr"r#r rrrrrrrrrrr	r
rr\r
rrrrrws  			c@sOeZdZdddZddZddZdd	Zd
dZdS)rNcCs2||_tj||j|j|||_dS)N)r0rr rrtitle)rr0rr[rrrr 5s	zOptionGroup.__init__cCsg|_|j|jdS)N)rurr0)rrrrr;s	zOptionGroup._create_option_listcCs
||_dS)N)r)rrrrr	set_title?szOptionGroup.set_titlecCstj||`dS)N)rrru)rrrrrBs
zOptionGroup.destroycCs@|j|j}|j|tj||7}|j|S)N)rQrrKrr
rL)rrrorrrr
Is


zOptionGroup.format_help)rr"r#r rrrr
rrrrr3s
c@seZdZgZddeddddddddd
ZddZdd	Zd
dZdd
Z	dddZ
ddZddZddZ
ddZddZddZddZddZd d!Zd"d#Zd$d%Zd&d'Zddd(d)Zd*d+Zd,d-Zd.d/Zd0d1Zd2d3Zd4d5Zd6d7Zd8d9Zd:dd;d<Z d=d>Z!d?d@Z"ddAdBZ#dCdDZ$ddEdFZ%ddGdHZ&dIdJZ'ddKdLZ(ddMdNZ)dS)OrNrTcCstj|||||j||	|_||_d|_d|_|dkr\t}||_|jj	||
|_
|j|d||jdS)NTadd_help)
rr 	set_usageprograllow_interspersed_argsprocess_default_valuesr
rrDr]_populate_option_list_init_parsing_state)rrNrurrrr[rZadd_help_optionrr]rrrr s
							zOptionParser.__init__cCsAtj|x|jD]}|jqW|`|`|`dS)N)rrrwrur)rrzrrrrs
zOptionParser.destroycCs g|_g|_|jdS)N)rurwr)rrrrrs		z OptionParser._create_option_listcCs&|jdddddtddS)Nz-hz--helprr_zshow this help message and exit)rr()rrrr_add_help_optionszOptionParser._add_help_optioncCs#|jddddtddS)Nz	--versionrrr_z&show program's version number and exit)rr()rrrr_add_version_optionsz OptionParser._add_version_optioncCsS|jr|j|j|r,|j||jr?|j|rO|jdS)N)standard_option_listrrrr)rrurrrrrs	
	
z"OptionParser._populate_option_listcCsd|_d|_d|_dS)N)rargslargsr)rrrrrs		z OptionParser._init_parsing_statecCsn|dkrtd|_nL|tkr6d|_n4|jjdra|dd|_n	||_dS)Nz%prog [options]zusage: )r(rNrrr)rrNrrrrszOptionParser.set_usagecCs
d|_dS)NT)r)rrrrenable_interspersed_argssz%OptionParser.enable_interspersed_argscCs
d|_dS)NF)r)rrrrdisable_interspersed_argssz&OptionParser.disable_interspersed_argscCs
||_dS)N)r)rrrrrset_process_default_values
sz'OptionParser.set_process_default_valuescCs||j|<dS)N)r`)rrbrrrrset_default
szOptionParser.set_defaultcKs|jj|dS)N)r`r)rrrrrset_defaultsszOptionParser.set_defaultscCs;|jdd}x!|jD]}|j|jqW|S)N)rurwrn)roptionsrzrrr_get_all_optionsszOptionParser._get_all_optionscCs|jst|jS|jj}xZ|jD]L}|j|j}t|tr2|j	}|j
||||j<q2Wt|S)N)rrr`copyr#rarbrr$rr)rr`r&rr'rrrget_default_valuess	
zOptionParser.get_default_valuescOst|dtr(t|||}nlt|dkr|r|d}t|tsjtd||j|k	rtdntd|jj||S)Nrrznot an OptionGroup instance: %rz"invalid OptionGroup (wrong parser)zinvalid arguments)	rr$rrkrr0r6rwrl)rrrrzrrradd_option_group*s
zOptionParser.add_option_groupcCsD|jj|p!|jj|}|r@|j|k	r@|jSdS)N)rrarr)rr'r&rrrget_option_group:s
zOptionParser.get_option_groupcCs/|dkrtjddS|ddSdS)Nr)rargv)rrrrr	_get_argsDszOptionParser._get_argscCs|j|}|dkr'|j}||_g|_}||_y|j|||}Wn>ttfk
r}z|jt	|WYdd}~XnX||}|j
||S)N)r)r%rrr
_process_argsrrrr$check_values)rrrrrstoperrrrr
parse_argsJs	
	&
zOptionParser.parse_argscCs
||fS)Nr)rrrrrrr+qszOptionParser.check_valuescCsx|r|d}|dkr*|d=dS|dddkrS|j||q|dddkrt|dkr|j||q|jr|j||d=qdSqWdS)Nrz--r.rr)_process_long_optrk_process_short_optsrrl)rrrrargrrrr*~s
	
(	

zOptionParser._process_argscCst||jS)N)
_match_abbrevr)rrxrrr_match_long_optszOptionParser._match_long_optc
CsK|jd}d|krL|jdd\}}|jd|d}n|}d}|j|}|j|}|jr|j}t||kr|jt	dd|d|d	|iq1|dkr|jd}	q1t
|d|}	|d|=n&|r+|jtd
|nd}	|j||	||dS)NrrIrTFz.%(option)s option requires %(number)d argumentz/%(option)s option requires %(number)d argumentsr&numberz%s option does not take a value)
poprinsertr3rr}rrkrrrr(r)
rrrr1rxZnext_argZhad_explicit_valuer&rrrrrr/s0	
		zOptionParser._process_long_optcCs^|jd}d}d}x<|ddD]*}d|}|jj|}|d7}|sjt||jr3|t|kr|jd||dd}|j}	t||	kr|jt	dd|	d|d	|	iq9|	dkr
|jd}
q9t
|d|	}
|d|	=nd}
|j||
|||r,Pq,WdS)
NrFrrTz.%(option)s option requires %(number)d argumentz/%(option)s option requires %(number)d argumentsr&r4)r5rrarr}rkr6rrrrr)rrrr1r,iZchrxr&rrrrrr0s6

		z OptionParser._process_short_optscCs1|jdkr&tjjtjdS|jSdS)Nr)rr3pathbasenamerr()rrrr
get_prog_nameszOptionParser.get_prog_namecCs|jd|jS)Nz%prog)rer:)rsrrrexpand_prog_name
szOptionParser.expand_prog_namecCs|j|jS)N)r<r[)rrrrrszOptionParser.get_descriptionrcCs'|rtjj|tj|dS)N)rstderrwriter)rstatusrrrrrszOptionParser.exitcCs4|jtj|jdd|j|fdS)Nr.z%s: error: %s
)print_usagerr=rr:)rrrrrrszOptionParser.errorcCs-|jr%|jj|j|jSdSdS)NrE)rNrrOr<)rrrr	get_usage"s		zOptionParser.get_usagecCs#|jrt|jd|dS)Nfile)rNprintrA)rrBrrrr@)s		zOptionParser.print_usagecCs!|jr|j|jSdSdS)NrE)rr<)rrrrget_version5s	zOptionParser.get_versioncCs#|jrt|jd|dS)NrB)rrCrD)rrBrrrr;s	zOptionParser.print_versioncCs|dkr|j}|j|g}|j|jtd|j|jr}|jtj|||jdx4|j	D])}|j|j
||jdqW|jdj|ddS)NZOptionsrZrErrj)
rr{rlrQr(rKrurrrwr
rLr+)rrrorzrrrrFs	

	

zOptionParser.format_option_helpcCs|j|jS)N)r^r])rrrrrr^WszOptionParser.format_epilogcCs|dkr|j}g}|jr;|j|jd|jr^|j|j|d|j|j||j|j|dj|S)NrZrE)	rrNrlrAr[r\rr^r+)rrrorrrr
Zs			zOptionParser.format_helpcCs,|dkrtj}|j|jdS)N)rstdoutr>r
)rrBrrrrfs	zOptionParser.print_help)*rr"r#rrr rrrrrrrrrrr r!r#r%r&r'r)r.r+r*r3r/r0r:r<rrrrAr@rDrrr^r
rrrrrrQs^F
	
'
3	$)
cs{|krSfdd|jD}t|dkrI|dS|s^tn|jt|dS)Ncs%g|]}|jr|qSr)r)rgZword)r;rrris	z!_match_abbrev.<locals>.<listcomp>rr)rrkrsortr))r;Zwordmapr*r)r;rr2ss
r2)&__version____all__Z
__copyright__rr3rUrrrImportErrorr(	Exceptionrr
rrrr)r	r
rrrrrrrrrcrrrrrrrr2rrrrr<module>sp	 




t

A$
Back to Directory File Manager