Your IP : 3.144.232.206


Current Path : /lib64/python2.7/site-packages/sepolgen/
Upload File :
Current File : //lib64/python2.7/site-packages/sepolgen/lex.pyc

�
��^c@s1dZddlZddlZddlZddlmZddlZejd�Zyej	ej
fZWnek
r�e
ZnXdefd��YZde
fd	��YZd
fd��YZd�Zd
�Zd�Zd�Zd�Zeedddddd�Zeed�Zd�ZeZdS(s2.2i����Ni(tutils^[a-zA-Z0-9_]+$tLexErrorcBseZd�ZRS(cCs|f|_||_dS(N(targsttext(tselftmessagets((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyt__init__0s(t__name__t
__module__R(((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyR/stLexTokencBs#eZd�Zd�Zd�ZRS(cCs d|j|j|j|jfS(NsLexToken(%s,%r,%d,%d)(ttypetvaluetlinenotlexpos(R((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyt__str__6scCs
t|�S(N(tstr(R((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyt__repr__8scCs|jj|�dS(N(tlexertskip(Rtn((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyR:s(RR	RRR(((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyR
5s		tLexercBsneZd�Zdd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d�Zd	�Zd
�Z
RS(cCs�d|_d|_i|_i|_d|_g|_d|_i|_i|_	d|_
d|_d|_d|_
d|_d|_d|_d|_d|_d|_d|_d|_dS(NtINITIALiti(tNonetlexret	lexretextt
lexstateretlexstateretexttlexstatet
lexstatestacktlexstateinfotlexstateignoretlexstateerrorft
lexreflagstlexdataRtlexlent	lexerrorft	lextokenst	lexignoretlexliteralst	lexmoduleR
tlexdebugtlexoptimize(R((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyRGs*																				c	Cs	t�}|j|_|j|_|j|_|j|_|j|_|j|_|j|_|j|_|j	|_	|j
|_
|j|_|j|_|j
|_
|j|_|j|_|j|_|j|_|r�i}x�|jj�D]�\}}g}xw|D]o\}}g}	xZ|D]R}
|
s;|
drN|	j|
�q#n|	jt||
dj�|
df�q#Wq
W|j||	f�|||<q�W||_i|_x6|jj�D]%\}}t||j�|j|<q�W||_n|j|j�|S(Nii(RRRRRRR R!R"R#RR$R&R*R
R+R(R)titemstappendtgetattrRtbegin(Rtobjecttctnewtabtkeytritemtnewretcretfindext	newfindextftef((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pytcloneasL	

/		c
Cs�t|dd�}|jd|tf�|jdt|j��|jdt|j��|jdt|j��|jdt|j��i}xv|jj	�D]e\}}g}xFt
t|��D]2}|j|j
||t||d�f�q�W|||<q�W|jd	t|��|jd
t|j��i}x=|jj	�D],\}}	|	rz|	j||<qXd||<qXW|jdt|��|j�dS(Ns.pytwsJ# %s.py. This file automatically created by PLY (version %s). Don't edit!
s_lextokens    = %s
s_lexreflags   = %s
s_lexliterals  = %s
s_lexstateinfo = %s
is_lexstatere   = %s
s_lexstateignore = %s
s_lexstateerrorf = %s
(topentwritet__version__treprR&R"R(RRR,trangetlenR-Rt_funcs_to_namesR R!RRtclose(
RttabfilettfttabreR3tlrettitemtittaberrR:((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pytwritetab�s*0c	BsXd|dUej|_ej|_ej|_ej|_ej	|_
i|_i|_x�ej
j�D]�\}}g}g}xjee|��D]V}|jej||dej�e||d|�f�|j||d�q�W||j|<||j|<qjWi|_x.ejj�D]\}}|||j|<q&W|jd�dS(Nsimport %s as lextabiiR(tlextabt
_lextokensR&t_lexreflagsR"t_lexliteralsR(t
_lexstateinfoRt_lexstateignoreR RRt_lexstatereR,RARBR-tretcompilet_names_to_funcsR!t_lexstateerrorfR/(	RREtfdictR3RHRIttxtitemRJR:((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pytreadtab�s(		;
	cCsXt|tj�p!t|tj�s3td��n||_d|_t|�|_dS(NsExpected a stringi(	t
isinstanceRt
bytes_typetstring_typet
ValueErrorR#RRBR$(RR((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pytinput�s
$		cCs{||jkrtd��n|j||_|j||_|jj|d�|_|jj|d�|_
||_dS(NsUndefined stateR(RR^RRRR tgetR'R!RR%R(Rtstate((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyR/�scCs$|jj|j�|j|�dS(N(RR-RR/(RRa((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyt
push_state�scCs|j|jj��dS(N(R/Rtpop(R((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyt	pop_state�scCs|jS(N(R(R((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyt
current_state�scCs|j|7_dS(N(R(RR((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyR�scCs|j}|j}|j}|j}x�||kr�|||krS|d7}q'nx}|jD]=\}}|j||�}|s�q]n||_t�}|j�|_	|j
|_
||_||_|j�}|j
}	||	\}
|_||_|
s|jr
|SPnt|
tj�s$Pn|
|�}|sC|j}Pn|js�|j|jkr�td|
jj|
jj|
j|jf||��q�n|SW|||jkrt�}|||_	|j
|_
||_|j	|_||_|d|_|S|jr�t�}|j||_	|j
|_
d|_||_||_||_|j|�}||jkr�td||||��n|j}|s�q'n|S||_td|||f||��q'W|d|_|jdkrtd��ndS(Nis4%s:%d: Rule '%s' returned an unknown token type '%s'terrors&Scanning error. Illegal character '%s's"Illegal character '%s' at index %ds"No input string given with input()(RR$R'R#RtmatchtlexmatchR
tgroupRR
Rtendt	lastindexRR[tcollectionstCallableR+R&Rt__code__tco_filenametco_firstlinenoRR(R%RtRuntimeError(RRR$R'R#RtlexindexfunctmttokRJtfunctnewtok((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyttoken�s�				
									#	
		
								%
N(RR	RRR;RLRZR_R/RbRdReRRw(((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyRFs	2			
					
cCs:ddl}|jj|�\}}|dkr4dSy&t|�}|j�}|j�Wntk
rndSXtjd�}tjd�}i}d}	d}
x�|D]�}|j	|�}|s�|j	|�}n|r(|j
d�}
|j|
�}|s
|	||
<q(d||	|
|fGHd}
n|	d7}	q�W|
S(Ni����s.pyis\s*def\s+(t_[a-zA-Z_0-9]*)\(s\s*(t_[a-zA-Z_0-9]*)\s*=s7%s:%d: Rule %s redefined. Previously defined on line %di(tos.pathtpathtsplitextR=t	readlinesRDtIOErrorRTRURgRiR`(tfilenametostbasetextR9tlinestfretsret	counthashtlinentnoerrortlRstnametprev((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyt_validate_fileds8


	cCsYg}xL|D]D}|rD|drD|j|dj|df�q
|j|�q
W|S(Nii(R-R(tfunclisttresultR9((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyRC�s
!cCsZg}xM|D]E}|rE|drE|j||d|df�q
|j|�q
W|S(Nii(R-(tnamelistRXR�R((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyRV�s
"cCs�|s
gSdj|�}y
tj|tj|B�}dgt|jj��d}x�|jj�D]�\}}|j	|d�}t
|�tjtj
fkr�||jdf||<qe|dk	re|jd�dkr�d||<d|fGHqd|df||<qeqeW||fg|gfSWn�tk
r�}	tt|�d�}
|
dkrcd}
nt||
 ||�\}}t||
||�\}
}||
||fSXdS(Nt|iitignore_itIGNORE(NN(tjoinRTRUtVERBOSERtmaxt
groupindextvaluesR,R`RttypestFunctionTypet
MethodTypeRtfindt	ExceptiontintRBt_form_master_re(trelisttreflagstldicttregexRRrR9RJthandleteRstllistRHtrlisttrre((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyR��s. 
	cCs�d}|jd�}xAtdt|��D]*}|||kr+||dkr+Pq+q+W|dkr{t|d|!�}nd}d|kr�t|j��}ndj||�}||fS(Nit_tANYR(sINITIAL(tsplitRARBttupletkeysR�(RtnamestnonstatetpartsRJtstatest	tokenname((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyt_statetoken�s iRMc3Cs�
d}idd6}d}	i}
t�}||_||_|rId}nd}|r^|}n|rt|tj�r�|j}nst|t�r�gt	|�D]}
|
t
||
�f^q�}i}x-|D]\}}|||<q�Wntd��||_nNy
t
�WnAt
k
rNtj�\}}}|j}|j}|j}nX|r�|r�y0|j||�|ja|ja|a|SWq�tk
r�q�Xn|r�t|t�r�t
|dd�}t
|dd�}t
|dd	�}n6|jdd�}|jdd�}|jdd	�}|s;td
��nt|t�pVt|t�shtd��ni|_|s�x~|D]U}tj|�s�d|GHd}	n|r�||jkr�d
|GHnd|j|<q~Wnx|D]}d|j|<q�W|rdt|jj��GHnygx`|D]X}t|t j!�pJt|t j"�s`t#|�dkr#dt$|�GHd}	q#q#q#WWnt%k
r�dGHd}	nX||_&|r�t|t�p�t|t�s�dGHd}	q�x"|D]}t|t�s	t#|�dkr$dt$|�GHd}	q�n|\}}t|t j"�rZ|}t j'|�}nt|t j!�s�t#|�t#|�kr�dt$|�GHd}	q�n|dkp�|dks�d|GHd}	q�n||kr�d|GHd}	q�n|||<q�Wng|j�D]}|d dkr|^q}i}i} i}!x(|j�D]}g||<g| |<qMWi}"i}#t#|�dkr�td��nx�|D]�}||}t(||�\}}$|$|!|<t|t)j*�rx�|D]}||j+||f�q�Wq�t|t j!�s/t|t j"�rZx7|D]}| |j+||f�q6Wq�d|GHd}	q�Wx'|j,�D]}|j-dd��qzWx'| j,�D]}|j-dd��q�Wi}%x�|j�D]�}&g}'xI||&D]=\}(}|j.j/})|j.j0}*d|
|*<|!|(}$t|tj1�}+|s�|j.j2},|+rVd}-nd}-|,|-kr�d|*|)|j3fGHd}	q�n|,|-kr�d|*|)|j3fGHd}	q�n|$d kr�d!|*|)|j3fGHd}	q�q�n|$d"kr||#|&<q�n|j4r	|s�y]t5j6d#|j3|j4ft5j7|B�}|jd	�rmd$|*|)|j3fGHd}	w�nWn^t5j8k
r�}d%|*|)|j3|fGHd&|j4kr�d'|*|)|j3fGHnd}	q�nX|r�d(|j3|j4|&fGHq�n|'j+d#|j3|j4f�q�d)|*|)|j3fGHq�Wxt| |&D]h\}}.|!|}$|$d kri	|.|"|&<q7	n|s�
|$d"kr�	td*|��d}	q7	n|$|jkr�	|$j9d+�dkr�	d,||$fGHd}	q7	nyKt5j6d#||.ft5j7|B�}|jd	�r 
d-|GHd}	w7	nWnFt5j8k
ri
}d.||fGHd&|.kr]
d/|GHnd}	q7	nX|r�
d(||.|&fGHq�
n|'j+d#||.f�q7	W|'s�
d0|&GHd}	n|'|%|&<q�W|s�
x,|
j�D]}t:|�s�
d}	q�
q�
Wn|	rtd1��nx�|%j�D]x}&t;|%|&||�\}/}0|/|j<|&<|0|j=|&<|r x3t>t#|0��D]}d2|&||0|fGHquWq q Wxk|j?�D]]\}&}1|&dkr�|1dkr�|j<|&j@|j<d�|j=|&j@|j=d�q�q�W||_A|j<d|_B|j=d|_C|"|_D|jDjdd	�|_E|#|_F|#jdd�|_G|r�|jGr�d3GHnx�|j?�D]�\}}2|2dkr�|r�||#kr�d4|GHn|rP
||"krP
|jErP
d5|GHqP
q�|2dkr�||#kr(
|#jdd�|#|<n||"krP
|"jdd	�|"|<qP
q�q�W|ja|ja|a|r�
|r�
|jH|�n|S(6Nt	inclusiveRiisExpected a module or instancettokensR�tliteralsRs$lex: module does not define 'tokens's$lex: tokens must be a list or tuple.slex: Bad token name '%s's*lex: Warning. Token '%s' multiply defined.slex: tokens = '%s's3lex: Invalid literal %s. Must be a single charactersOlex: Invalid literals specification. literals must be a sequence of characters.s/lex: states must be defined as a tuple or list.isRlex: invalid state specifier %s. Must be a tuple (statename,'exclusive|inclusive')s(lex: state name %s must be a byte stringt	exclusives?lex: state type for state %s must be 'inclusive' or 'exclusive's lex: state '%s' already defined.tt_s1lex: no rules of the form t_rulename are defined.s+lex: %s not defined as a function or stringR3cSs|djjS(Ni(RnRp(tx((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyt<lambda>�scSst|d�S(Ni(RB(R�((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyR��ss(%s:%d: Rule '%s' has too many arguments.s&%s:%d: Rule '%s' requires an argument.tignores-%s:%d: Rule '%s' must be defined as a string.Rfs
(?P<%s>%s)s=%s:%d: Regular expression for rule '%s' matches empty string.s3%s:%d: Invalid regular expression for rule '%s'. %st#s7%s:%d. Make sure '#' in rule '%s' is escaped with '\#'.s(lex: Adding rule %s -> '%s' (state '%s')s2%s:%d: No regular expression defined for rule '%s's,lex: Rule '%s' must be defined as a functionR�s3lex: Rule '%s' defined for an unspecified token %s.s;lex: Regular expression for rule '%s' matches empty string.s1lex: Invalid regular expression for rule '%s'. %ss5lex: Make sure '#' in rule '%s' is escaped with '\#'.s$lex: No rules defined for state '%s'slex: Unable to build lexer.s!lex: state '%s'. regex[%d] = '%s's)lex: Warning. no t_error rule is defined.s?lex: Warning. no error rule is defined for exclusive state '%s's@lex: Warning. no ignore rule is defined for exclusive state '%s'(IRRR*R+R[R�t
ModuleTypet__dict__t
_INSTANCETYPEtdirR.R^R)Rqtsystexc_infottb_frametf_backt	f_globalsRZRwR_RtImportErrorR`tSyntaxErrortlistR�R&t_is_identifierRgR�RR\R]RBR@t	TypeErrorR(tencode_inputR�RlRmR-R�tsortRnRpRoR�tco_argcountRt__doc__RTRUR�RfR�R�R�RRRAR,textendRRRR R'R!R%RL(3tmoduleR0tdebugtoptimizeRMR�tnowarnR�t	stateinfoRftfilestlexobjtwarntkt_itemsRJtvR�tbttR9R�R�R�RR1RR�t	statetypet
original_namettsymbolstfuncsymtstrsymttoknamesR�terrorfttoknametregexsRat
regex_listtfnametlinetfiletismethodtnargstreqargstrRtre_textRtstype((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pytlex�s�
					.

		
		
	
		

7

		
"+		/




$
	


		
	)
 

$#	
		

!"			 		cCs�|sdy3tjd}t|�}|j�}|j�Wqdtk
r`dGHtjj�}qdXn|rv|j}nt}||�|r�|j}nt}x7|�}|s�Pnd|j	|j
|j|jfGHq�dS(Nis.Reading from standard input (type EOF to end):s
(%s,%r,%d,%d)(
R�targvR=treadRDt
IndexErrortstdinR_RwRRR
R(RtdataR}R9t_inputt_tokenRt((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pytrunmain>s*


	cs�fd�}|S(Ncs
�|_|S(N(R�(R9(R�(s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pytset_docas	((R�R�((R�s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pytTOKEN`s(R?RTR�R�RRRlRUR�tInstanceTypet
ObjectTypeR�tAttributeErrorR0R�RR
RR�RCRVR�R�RR�R�R�tToken(((s2/usr/lib64/python2.7/site-packages/sepolgen/lex.pyt<module>s,$

�	'			&	�X"