MINI MINI MANI MO

Path : /usr/lib64/python2.7/
File Upload :
Current File : //usr/lib64/python2.7/sre_parse.pyc


C]c@sdZddlZddlTddlmZdZdZedZedZ	ed	Z
ed
Ziee
dfd6ee
d
fd6ee
dfd6ee
dfd6ee
dfd6ee
dfd6ee
dfd6ee
dfd6Zi
eefd6eefd6eefd6eeefgfd6eeefgfd6eeefgfd6eeefgfd 6eeefgfd!6eeefgfd"6eefd#6Zied$6ed%6ed&6e d'6e!d(6e"d)6e#d*6Z$d+fd,YZ%d-fd.YZ&d/fd0YZ'd1Z(d2Z)d3Z*d4Z+d5Z,d6d7Z-d8Z.ed9Z/ed:Z0ed;Z1ee2e3gZ4d<Z5d=e6d>Z7d?Z8d@Z9dS(AsInternal support module for sreiN(t*(t	MAXREPEATs.\[{()*+?^$|s*+?{t
0123456789t01234567t0123456789abcdefABCDEFs 	

ss\ass\bss\fs
s\ns
s\rs	s\tss\vs\s\\s\As\Bs\ds\Ds\ss\Ss\ws\Ws\ZtitLtmtstxtttutPatterncBs/eZdZddZdZdZRS(cCs(d|_g|_d|_i|_dS(Nii(tflagstopentgroupst	groupdict(tself((s!/usr/lib64/python2.7/sre_parse.pyt__init__Ds			cCs|j}|d|_|dk	rr|jj|d}|dk	rbtdt|||fn||j|<n|jj||S(Nis7redefinition of group name %s as group %d; was group %d(RtNoneRtgetterrortreprRtappend(Rtnametgidtogid((s!/usr/lib64/python2.7/sre_parse.pyt	opengroupIs	
cCs|jj|dS(N(Rtremove(RR((s!/usr/lib64/python2.7/sre_parse.pyt
closegroupTscCs||jko||jkS(N(RR(RR((s!/usr/lib64/python2.7/sre_parse.pyt
checkgroupVsN(t__name__t
__module__RRRRR(((s!/usr/lib64/python2.7/sre_parse.pyRBs		t
SubPatterncBsheZddZddZdZdZdZdZdZ	dZ
d	Zd
ZRS(cCs4||_|dkrg}n||_d|_dS(N(tpatternRtdatatwidth(RR"R#((s!/usr/lib64/python2.7/sre_parse.pyR[s
			icCsud}tdtgf}xP|jD]E\}}|d|Gd}|dkrHd}x|D]!\}}|dd|G|GHq`Wn|dkrHd}d}x|dD]C}|dkr|ddGHn|j|dd}|d}qWnmt||krYxX|D]C}t|trH|s.Hn|j|dd}q|Gd}qWn
|Gd}|s(Hq(q(WdS(Nis  itintbranchtor((ttypeR#tdumpt
isinstanceR!(RtleveltnltseqtypestoptavtaR((s!/usr/lib64/python2.7/sre_parse.pyR)asB
	
cCs
t|jS(N(RR#(R((s!/usr/lib64/python2.7/sre_parse.pyt__repr__}scCs
t|jS(N(tlenR#(R((s!/usr/lib64/python2.7/sre_parse.pyt__len__scCs|j|=dS(N(R#(Rtindex((s!/usr/lib64/python2.7/sre_parse.pyt__delitem__scCs1t|tr&t|j|j|S|j|S(N(R*tsliceR!R"R#(RR4((s!/usr/lib64/python2.7/sre_parse.pyt__getitem__scCs||j|<dS(N(R#(RR4tcode((s!/usr/lib64/python2.7/sre_parse.pyt__setitem__scCs|jj||dS(N(R#tinsert(RR4R8((s!/usr/lib64/python2.7/sre_parse.pyR:scCs|jj|dS(N(R#R(RR8((s!/usr/lib64/python2.7/sre_parse.pyRscCs|jr|jSd}}ttttttf}ttf}xy|j	D]n\}}|t
krtd}d}xB|dD]6}|j\}	}
t
||	}t||
}q{W||}||}qH|tkr|j\}}||}||}qH|tkr:|dj\}}||}||}qH||kr|dj\}}|||d}|||d}qH||kr|d}|d}qH|tkrHPqHqHWt
|tdt
|tf|_|jS(Nliii(R$tANYtRANGEtINtLITERALtNOT_LITERALtCATEGORYt
MIN_REPEATt
MAX_REPEATR#tBRANCHRtgetwidthtmintmaxtCALLt
SUBPATTERNtSUCCESS(Rtlothit	UNITCODEStREPEATCODESR.R/Rtjtlth((s!/usr/lib64/python2.7/sre_parse.pyRDsD	









%N(
RR RRR)R1R3R5R7R9R:RRD(((s!/usr/lib64/python2.7/sre_parse.pyR!Ys							t	TokenizercBsAeZdZdZddZdZdZdZRS(cCs ||_d|_|jdS(Ni(tstringR4t_Tokenizer__next(RRR((s!/usr/lib64/python2.7/sre_parse.pyRs		cCs|jt|jkr%d|_dS|j|j}|ddkry|j|jd}Wntk
rytdnX||}n|jt||_||_dS(Nis\isbogus escape (end of line)(R4R2RRRtnextt
IndexErrorR(Rtchartc((s!/usr/lib64/python2.7/sre_parse.pyt__nexts	


icCs*||jkr&|r"|jndSdS(Nii(RTRS(RRVtskip((s!/usr/lib64/python2.7/sre_parse.pytmatchs

cCs|j}|j|S(N(RTRS(Rtthis((s!/usr/lib64/python2.7/sre_parse.pyRs	
cCs|j|jfS(N(R4RT(R((s!/usr/lib64/python2.7/sre_parse.pyttellscCs|\|_|_dS(N(R4RT(RR4((s!/usr/lib64/python2.7/sre_parse.pytseeks(RR RRSRZRR\R](((s!/usr/lib64/python2.7/sre_parse.pyRQs		
		cCsBd|kodknpAd|ko3dknpA|dkS(NR0tztAtZt_((RV((s!/usr/lib64/python2.7/sre_parse.pytisidentscCsd|kodkSS(Nt0t9((RV((s!/usr/lib64/python2.7/sre_parse.pytisdigitscCsKt|dstSx0|dD]$}t|rt|rtSqWtS(Nii(RbtFalseRetTrue(RRV((s!/usr/lib64/python2.7/sre_parse.pytisnamescCstj|}|r|Stj|}|rB|dtkrB|SyO|dd!}|dkrx5|jtkrt|dkr||j}qaW|d}t|dkrtdtd|nt	t
|dd	@fS|tkrHx5|jtkr&t|dkr&||j}qW|d}t	t
|d
d	@fS|tkrjtdt|nt|dkrt	t
|dfSWntk
rnXtdt|dS(NiiiR	isbogus escape: %ss\iii(tESCAPESRt
CATEGORIESR=RTt	HEXDIGITSR2RRR>tintt	OCTDIGITStDIGITStordt
ValueError(tsourcetescapeR8RW((s!/usr/lib64/python2.7/sre_parse.pyt
_class_escapes6
$
$

cCsBtj|}|r|Stj|}|r2|Sy|dd!}|dkrx5|jtkrt|dkr||j}qQWt|dkrtntt|ddd@fS|dkrx5|jt	krt|dkr||j}qWtt|ddd@fS|t
kr|jt
kr||j}|dt	kr|dt	kr|jt	kr||j}tt|ddd@fSnt|d}||jkr|j|st
d	nt|fStnt|dkrtt|dfSWntk
r*nXt
d
t|dS(NiiR	iiiRciscannot refer to open groupsbogus escape: %s(RjRRiRTRkR2RpR>RlRmRnRRRtGROUPREFRoR(RqRrtstateR8RWtgroup((s!/usr/lib64/python2.7/sre_parse.pyt_escapesH
$	$ 
	
icCsg}|j}|j}xX|t|||dr@qn|sJPn|jsc|ddrgPqtdqt|dkr|dSt|}|j}xwd}xj|D]=}	|	sPn|dkr|	d}q|	d|krPqqWx|D]
}	|	d=qW||qPqxz|D]0}	t|	dksO|	ddtkr#Pq#q#Wg}
|
j}x|D]}	||	dqmW|t	|
f|S|jt
d|ff|S(Nt|t)ispattern not properly closedi(RRZt_parseRTRR2R!RR>R=RC(RqRutnestedtitemstitemsappendtsourcematcht
subpatterntsubpatternappendtprefixtitemtsett	setappend((s!/usr/lib64/python2.7/sre_parse.pyt
_parse_sub.sR			




&	
cCst||}|jdrKt||}|jdrQtdqQnd}|jry|jddrytdnt|}|jt|||ff|S(NRxs/conditional backref with more than two branchesRyispattern not properly closed(RzRZRRRTR!RtGROUPREF_EXISTS(RqRut	condgrouptitem_yestitem_noR((s!/usr/lib64/python2.7/sre_parse.pyt_parse_sub_condiss|)s=!<s=!c Cst|}|j}|j}|j}t}t}t}t}	t}
xx|j	|kr[Pn|}|dkrtPn|jt@r|t
krqHn|dkrx|}|d/krPqqqHqn|r|dtkr|tt|fqH|dkrg}|j}
|dr0|
tdfn|}x|}|dkr_||kr_PnL|r|ddkrt||}n$|rtt|f}n	td|d	r|}|dkr|dtkr|d
d}n|
||
ttd	fPq|r|ddkr9t||}ntt|f}|dtksk|dtkrwtdn|d
}|d
}||krtdn|
t||ffqtdq:|dtkr|d
d}n|
|q:||d
kr-|ddtkr-||dq||dkr|ddtkr|d
dtkr|t|d
d
fq|t|fqH|r(|dtkr(|d
krd0\}}n|dkrdt}}n|dkrd
t}}nt|dkri|j	dkr5|tt|fqHn|j}dt}}d}}x#|j	tkr}||j}q[W|drx)|j	tkr||}qWn|}|ds|tt|f|j|qHn|rt|}|tkrtdqn|rrt|}|tkrHtdn||krftdqfqrn	td|r|d}nd}|s||d
kr|ddtkrtdn|dd|
krtdn|d
rt|||ff|d<qt |||ff|d<qH|dkrG|t!dfqH|dkr>d
}d}d}|d
rZ
d}|dr|drd}x>|}|dkrtdn|dkrPn||}qd
}|std nt"|std!|qqW
|d"rd}x>|}|dkrItdn|d#krYPn||}q(|s{td nt"|std$|n|j#j|}|dkrtd%n|t$|fqHqW
|}|dkrtd&ntd'|qZ
|d(r d}qZ
|dryx,|j	dksM|j	d#krQPn|q/|d#sHtd)qHqHqZ
|j	|kr8	|}d
}|dkr|j	|	krtd*nd}|}nt%||}|d#std)n|d"kr	|t&||ffqH|t'||ffqHqZ
|dr
d}x>|}|dkrn	tdn|d#kr~	Pn||}qM	d}|s	td nt"|r	|j#j|}|dkr
td%q
qW
yt|}WqW
t(k
r
td+qW
XqZ
|j	t)kr*
td&nx-|j	t)krV
|jt)|B|_q-
Wn|r
|dkru
d}n|j*|}|r
t+|||}nt%||}|d#s
td)n|dk	r
|j,|n|t-||ffqx|}|dkrtd&n|d#kr/Pntd,q
qH|dkr]|tt.fqH|d-kr|jtt/fqH|r|ddkrt0|||}||qHtd.qH|S(1Nt#s
it[t^t]s\s$unexpected end of regular expressiont-isbad character rangeit?Rt+t{t}tt,s"the repetition number is too largesbad repeat intervals
not supportedisnothing to repeatsmultiple repeatt.t(tPt<sunterminated namet>smissing group namesbad character in group name %rt=Rys&bad character in backref group name %rsunknown group namesunexpected end of patternsunknown specifier: ?P%st:sunbalanced parenthesisssyntax errorsbad character in group namesunknown extensiont$sparser error(Ns
(ii(1R!RRRZR2t_PATTERNENDERSt_ASSERTCHARSt_LOOKBEHINDASSERTCHARSt_REPEATCODESRTRR
tSRE_FLAG_VERBOSEt
WHITESPACEt
SPECIAL_CHARSR>RotNEGATERsRR=R<R?tREPEAT_CHARSRR\RnR]Rlt
OverflowErrortATRARBR;RhRRtRtASSERTt
ASSERT_NOTRptFLAGSRRRRHtAT_BEGINNINGtAT_ENDRw( RqRuRRt	sourcegetR~t_lent
PATTERNENDERStASSERTCHARStLOOKBEHINDASSERTCHARSRMR[RRtstarttcode1tcode2RJRKRERFthereRRvRRRVRtdirtptcondnameR8((s!/usr/lib64/python2.7/sre_parse.pyRz|s				
						
 


&:


	
-	
	

		
		

		
icCst|}|dkr$t}n||_||_t||d}|j}|dkrltdn|r~tdn|t@r|j	n|t
@r|jjt
@rt||jjS|S(NiRysunbalanced parenthesiss-bogus characters at end of regular expression(
RQRRR
tstrRRRtSRE_FLAG_DEBUGR)RR"tparse(RR
R"RqRttail((s!/usr/lib64/python2.7/sre_parse.pyRs 		

cCst|}|j}g}|j}||d}|d }t|tdkr^t}nt}x|}	|	dkrPn|	r|	ddkr|	dd!}
|
dkrd}|jdrxA|}|dkrtd	n|d
krPn||}qn|stdny(t	|}
|
dkrAtdnWnWt
k
rt|sjtd
ny|j|}
Wqt
k
rtdqXnX|t|
fq|
dkr|jtkr|	|}	|jtkr|	|}	qn||t	|	ddd@q|
tkrt}|jtkr|	|}	|
tkr|	dtkr|jtkr|	|}	t}||t	|	ddd@qn|s|tt	|	dfqqy|t|	d}	Wnt
k
rnX||	qg||	qgd}g}|j}dgt|}xG|D]?\}
}|
tkrv|||fn
|||<|d}qKW||fS(NcSsM|r9|ddtkr9t|dd|f|d<n|t|fdS(Niii(R>(tliteralRtpappend((s!/usr/lib64/python2.7/sre_parse.pyRsiRs\iitgRsunterminated group nameRsmissing group namesnegative group numbersbad character in group namesunknown group nameRcii(RQRRR(tchrtunichrRRZRRlRpRht
groupindextKeyErrorRUtMARKRTRmRnRfRgRiR2(RqR"RtsgetRR0RtseptmakecharR[RWRRVR4tisoctalRRtgroupsappendtliterals((s!/usr/lib64/python2.7/sre_parse.pytparse_templates		
		
	


$

' 


	
c	Cs|j}|jd }|\}}|}yGx@|D]8\}}||||<}|dkr3tdq3q3WWntk
rtdnX|j|S(Nisunmatched groupsinvalid group reference(RvRRRRRUtjoin(	ttemplateRZRRRRR4RvR((s!/usr/lib64/python2.7/sre_parse.pytexpand_templates	


(:t__doc__tsyst
sre_constantst_sreRRRRRnRmRkRR>RoRiRtAT_BEGINNING_STRINGtAT_BOUNDARYtAT_NON_BOUNDARYR=R@tCATEGORY_DIGITtCATEGORY_NOT_DIGITtCATEGORY_SPACEtCATEGORY_NOT_SPACEt
CATEGORY_WORDtCATEGORY_NOT_WORDt
AT_END_STRINGRjtSRE_FLAG_IGNORECASEtSRE_FLAG_LOCALEtSRE_FLAG_MULTILINEtSRE_FLAG_DOTALLRtSRE_FLAG_TEMPLATEtSRE_FLAG_UNICODERRR!RQRbReRhRsRwRRRRRRARBRRzRRRR(((s!/usr/lib64/python2.7/sre_parse.pyt<module>sp




Y!					 	,;		)	W

OHA YOOOO