HEX
Server: LiteSpeed
System: Linux php-prod-1.spaceapp.ru 5.15.0-157-generic #167-Ubuntu SMP Wed Sep 17 21:35:53 UTC 2025 x86_64
User: xnsbb3110 (1041)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //usr/local/CyberPanel/lib64/python3.10/site-packages/pycparser/ply/__pycache__/lex.cpython-310.pyc
o

��h���
@s:dZdZddlZddlZddlZddlZddlZddlZzejej	fZ
Wn
ey1ee
fZ
Ynwe�d�ZGdd�de�ZGdd�de�ZGdd	�d	e�ZGd
d�de�ZGdd
�d
�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�ZGdd�de�Zdddddeej�ddddf
dd�Z d$d d!�Z!d"d#�Z"e"Z#dS)%z3.10�Nz^[a-zA-Z0-9_]+$c@seZdZdd�ZdS)�LexErrorcCs|f|_||_dS�N)�args�text)�self�message�s�r	�G/usr/local/CyberPanel/lib/python3.10/site-packages/pycparser/ply/lex.py�__init__:s
zLexError.__init__N)�__name__�
__module__�__qualname__rr	r	r	r
r9src@�eZdZdd�Zdd�ZdS)�LexTokencCsd|j|j|j|jfS)NzLexToken(%s,%r,%d,%d))�type�value�lineno�lexpos�rr	r	r
�__str__A�zLexToken.__str__cCst|�Sr)�strrr	r	r
�__repr__DszLexToken.__repr__N)rr
rrrr	r	r	r
r@�rc@s4eZdZdd�Zdd�Zdd�Zdd�ZeZeZd	S)
�	PlyLoggercCs
||_dSr��f)rrr	r	r
rLs
zPlyLogger.__init__cOs|j�||d�dS)N�
�r�write�r�msgr�kwargsr	r	r
�criticalOrzPlyLogger.criticalcO�|j�d||d�dS)Nz	WARNING: rrr!r	r	r
�warningR�zPlyLogger.warningcOr%)NzERROR: rrr!r	r	r
�errorUr'zPlyLogger.errorN)	rr
rrr$r&r(�info�debugr	r	r	r
rKsrc@r)�
NullLoggercC�|Srr	)r�namer	r	r
�__getattribute__^�zNullLogger.__getattribute__cOr,rr	)rrr#r	r	r
�__call__ar/zNullLogger.__call__N)rr
rr.r0r	r	r	r
r+]rr+c@s|eZdZdd�Zddd�Zddd�Zd	d
�Zdd�Zd
d�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�ZeZdS)�LexercCs�d|_d|_i|_i|_i|_d|_g|_d|_i|_i|_	i|_
d|_d|_d|_
d|_d|_d|_d|_d|_d|_d|_d|_d|_dS)N�INITIALr��F)�lexre�	lexretext�
lexstatere�lexstateretext�lexstaterenames�lexstate�
lexstatestack�lexstateinfo�lexstateignore�lexstateerrorf�lexstateeoff�
lexreflags�lexdatar�lexlen�	lexerrorf�lexeoff�	lextokens�	lexignore�lexliterals�	lexmoduler�lexoptimizerr	r	r
rts.
zLexer.__init__Nc	Cs�t�|�}|rei}|j��D]:\}}g}|D]&\}}g}	|D]}
|
r&|
ds,|	�|
�q|	�t||
dj�|
df�qq|�||	f�|||<q||_i|_|j��D]
\}}t||j�|j|<qT||_|S�Nrr4)�copyr7�items�append�getattrrr>rH)r�object�c�newtab�key�ritem�newre�cre�findex�	newfindexr�efr	r	r
�clone�s*

 �
zLexer.cloner3c	Cs�t|tj�r
td��|�d�d}tj�||�d}t|d���}|�	d|t
f�|�	dtt��|�	dtt
t|j����|�	d	t|j��|�	d
t|j��|�	dt|j��i}|j��D](\}}g}	t||j||j|�D]\\}
}}}
|	�|t||
�f�qw|	||<qe|�	dt|��|�	d
t|j��i}|j��D]
\}}|r�|jnd||<q�|�	dt|��i}|j��D]
\}}|r�|jnd||<q�|�	dt|��Wd�dS1s�wYdS)Nz&Won't overwrite existing lextab module�.���z.py�wzJ# %s.py. This file automatically created by PLY (version %s). Don't edit!
z_tabversion   = %s
z_lextokens    = set(%s)
z_lexreflags   = %s
z_lexliterals  = %s
z_lexstateinfo = %s
z_lexstatere   = %s
z_lexstateignore = %s
z_lexstateerrorf = %s
z_lexstateeoff = %s
)�
isinstance�types�
ModuleType�IOError�split�os�path�join�openr �__version__�repr�__tabversion__�tuple�sortedrEr@rGr<r7rL�zipr8r9rM�_funcs_to_namesr=r>rr?)r�lextab�	outputdir�
basetabmodule�filename�tf�tabre�	statename�lre�titem�pat�func�retext�renames�taberrrX�tabeofr	r	r
�writetab�s8&
"�zLexer.writetabcCs@t|tj�r	|}ntd|�tj|}t|dd�tkr td��|j	|_
|j|_|j
|_|j
t|j�B|_|j|_|j|_i|_i|_|j��D](\}}g}g}|D]\}}	|�t�||j�t|	|�f�qR||j|<||j|<qHi|_|j��D]\}}
||
|j|<qyi|_|j ��D]\}}
||
|j|<q�|�!d�dS)N�	import %s�_tabversionz0.0zInconsistent PLY versionr2)"r]r^r_�exec�sys�modulesrNrh�ImportError�
_lextokensrE�_lexreflagsr@�_lexliteralsrG�set�
lextokens_all�
_lexstateinfor<�_lexstateignorer=r7r8�_lexstatererLrM�re�compile�_names_to_funcsr>�_lexstateerrorfr?�
_lexstateeoff�begin)r�tabfile�fdictrmrsrtru�txtitemrv�	func_namerXr	r	r
�readtab�s8
 
z
Lexer.readtabcCs8|dd�}t|t�std��||_d|_t|�|_dS)Nr4zExpected a stringr)r]�StringTypes�
ValueErrorrAr�lenrB)rrrPr	r	r
�input�s
zLexer.inputcCsd||jvr	td��|j||_|j||_|j�|d�|_|j�|d�|_	|j
�|d�|_||_dS)NzUndefined stater3)
r7r�r5r8r6r=�getrFr>rCr?rDr:�r�stater	r	r
r�s

zLexer.begincCs|j�|j�|�|�dSr)r;rMr:r�r�r	r	r
�
push_stateszLexer.push_statecCs|�|j���dSr)r�r;�poprr	r	r
�	pop_stateszLexer.pop_statecCs|jSr)r:rr	r	r
�
current_state!szLexer.current_statecCs|j|7_dSr)r)r�nr	r	r
�skip'sz
Lexer.skipcCsx|j}|j}|j}|j}||k�r
|||vr|d7}q|jD]v\}}|�||�}|s,qt�}|��|_|j	|_	||_|j
}	||	\}
|_|
sY|jrS|��|_|S|��}n�|��}||_
||_||_|
|�}|st|j}|j}n�|js�|j|jvr�td|
jj|
jj|
j|jf||d���|S|||jvr�t�}|||_|j	|_	|j|_||_|d|_|S|jr�t�}|j|d�|_|j	|_	d|_||_
||_||_|�|�}||jkr�td||||d���|j}|s�q|S||_td|||f||d���||ks|j�r+t�}d|_d|_|j	|_	||_||_
||_|�|�}|S|d|_|jdu�r:td��dS)	Nr4z4%s:%d: Rule '%s' returned an unknown token type '%s'r(z&Scanning error. Illegal character '%s'z"Illegal character '%s' at index %d�eofr3z"No input string given with input())rrBrFrAr5�matchr�grouprr�	lastindexr�end�lexer�lexmatchrIr�r�__code__�co_filename�co_firstlinenorrGrCrD�RuntimeError)rrrBrFrAr5�lexindexfunc�m�tok�irw�newtokr	r	r
�token1s�


�
�



�V

zLexer.tokencCr,rr	rr	r	r
�__iter__�r/zLexer.__iter__cCs|��}|dur
t�|Sr)r��
StopIteration)r�tr	r	r
�next�sz
Lexer.nextr)r3)rr
rrrYr|r�r�r�r�r�r�r�r�r�r��__next__r	r	r	r
r1ss

%(

nr1cCst|d|j�S)N�regex)rN�__doc__)rwr	r	r
�
_get_regex�sr�cCs0t�|�}|j��}|j|jkr|�|j�|Sr)r��	_getframe�	f_globalsrK�f_locals�update)�levelsr�ldictr	r	r
�get_caller_module_dict�s


r�cCsFg}t||�D]\}}|r|dr|�||df�q|�|�q|SrJ)rkrM)�funclist�namelist�resultrr-r	r	r
rl�srlcCsDg}|D]}|r|dr|�||d|df�q|�|�q|SrJ)rM)r�r�r�r�r	r	r
r��sr�cCs\|sgSd�|�}zft�||�}dgt|j���d}|dd�}|j��D]=\}}	|�|d�}
t|
�t	j
t	jfvrH|
||f||	<|||	<q'|
durd|||	<|�d�dkr\d||	<q'd||f||	<q'||fg|g|gfWSt
y�tt|�d�}|dkr�d}t|d|�|||�\}}
}t||d�|||�\}}}|||
|||fYSw)N�|r4�ignore_r�NN�)rdr�r��max�
groupindex�valuesrLr�rr^�FunctionType�
MethodType�find�	Exception�intr��_form_master_re)�relist�reflagsr��toknamesr�r5r��
lexindexnamesrr��handler��llistrt�lnames�rlist�rre�rnamesr	r	r
r��s6


��r�cCs�d}|�d�}t|dd�d�D]\}}||vr|dkrnq|dkr,t|d|��}nd}d|vr6t|�}d�||d��}||fS)Nr4�_�ANY)r2)ra�	enumeraterird)r�names�nonstate�partsr��part�states�	tokennamer	r	r
�_statetokens
�r�c@sfeZdZddd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dS)�LexerReflectNrcCsR||_d|_g|_||_ddi|_t�|_d|_|dur$tt	j
�|_dS||_dS)Nr2�	inclusiveF)r��
error_func�tokensr��	stateinfor�r�r(rr��stderr�log)rr�r�r�r	r	r
r/s
"zLexerReflect.__init__cCs$|��|��|��|��dSr)�
get_tokens�get_literals�
get_states�	get_rulesrr	r	r
�get_all:szLexerReflect.get_allcCs|��|��|��|jSr)�validate_tokens�validate_literals�validate_rulesr(rr	r	r
�validate_allAszLexerReflect.validate_allcCsp|j�dd�}|s|j�d�d|_dSt|ttf�s&|j�d�d|_dS|s3|j�d�d|_dS||_dS)Nr�zNo token list is definedTztokens must be a list or tupleztokens is empty)r�r�r�r(r]�listrir�)rr�r	r	r
r�Hs
zLexerReflect.get_tokenscCsPi}|jD] }t�|�s|j�d|�d|_||vr!|j�d|�d||<qdS)NzBad token name '%s'TzToken '%s' multiply definedr4)r��_is_identifierr�r�r(r&)r�	terminalsr�r	r	r
r�\s


�zLexerReflect.validate_tokenscCs$|j�dd�|_|jsd|_dSdS)N�literalsr3)r�r�r�rr	r	r
r�gs
�zLexerReflect.get_literalscCshz |jD]}t|t�rt|�dkr|j�dt|��d|_qWdSty3|j�d�d|_YdSw)Nr4z.Invalid literal %s. Must be a single characterTzIInvalid literals specification. literals must be a sequence of characters)r�r]r�r�r�r(rg�	TypeError)rrPr	r	r
r�ms
���zLexerReflect.validate_literalscCs�|j�dd�|_|jrzt|jttf�s|j�d�d|_dS|jD]Z}t|t�r.t|�dkr;|j�dt	|��d|_q!|\}}t|t
�sQ|j�dt	|��d|_q!|dksd|dksd|j�d	|�d|_q!||jvrt|j�d
|�d|_q!||j|<q!dSdS)Nr�z)states must be defined as a tuple or listTr�zMInvalid state specifier %s. Must be a tuple (statename,'exclusive|inclusive')zState name %s must be a stringr��	exclusivez:State type for state %s must be 'inclusive' or 'exclusive'zState '%s' already defined)r�r�r�r]rir�r�r(r�rgr�r�)rrr-�	statetyper	r	r
r�xs4



�zLexerReflect.get_statesc	Csdd�|jD�}i|_i|_i|_i|_i|_i|_|jD]}g|j|<g|j|<qt|�dkr;|j	�
d�d|_
dS|D]�}|j|}t||j�\}}||j|<t|d�r�|dkre|D]}||j|<q\q=|dkrt|D]}||j|<qkq=|d	kr�|j
j}|j
j}|j	�
d
|||j�d|_
q=|D]}|j|�||f�q�q=t|t�r�|d	kr�|D]}||j|<q�d|vr�|j	�d|�q=|dkr�|j	�
d
|�d|_
q=|D]}|j|�||f�q�q=|j	�
d|�d|_
q=|j��D]
}|jdd�d�q�|j��D]}|jdd�dd�q�dS)NcSs g|]}|dd�dkr|�qS)Nr��t_r	)�.0rr	r	r
�
<listcomp>�s z*LexerReflect.get_rules.<locals>.<listcomp>rz+No rules of the form t_rulename are definedTr0r(r��ignorez,%s:%d: Rule '%s' must be defined as a string�\z#%s contains a literal backslash '\'�'Rule '%s' must be defined as a functionz&%s not defined as a function or stringcSs|djjS�Nr4)r�r���xr	r	r
�<lambda>��z(LexerReflect.get_rules.<locals>.<lambda>)rRcSst|d�Sr)r�rr	r	r
r�r)rR�reverse)r�r��funcsym�strsymr�errorf�eoffr�r�r�r(r��hasattrr�r�r�rrMr]r�r&r��sort)	r�tsymbolsrrr�r��tokname�line�filer	r	r
r��sn




���
���zLexerReflect.get_rulescCsj|jD�]�}|j|D]�\}}|jj}|jj}t�|�}|j�|�|j	|}t
|tj�r0d}nd}|jj
}	|	|krH|j�d|||j�d|_q|	|krZ|j�d|||j�d|_qt|�sl|j�d|||j�d|_qz!t�d|t|�f|j�}
|
�d�r�|j�d	|||j�d|_Wqtjy�}z$|j�d
|||j|�dt|�vr�|j�d|||j�d|_WYd}~qd}~ww|j|D]x\}}
|j	|}|d
kr�|j�d|�d|_q�||jvr�|�d�dkr�|j�d||�d|_q�zt�d||
f|j�}
|
�d��r|j�d|�d|_Wq�tj�y<}z|j�d||�d|
v�r/|j�d|�d|_WYd}~q�d}~ww|j|�sS|j|�sS|j�d|�d|_|j�|d�}|�r�|}|jj}|jj}t�|�}|j�|�t
|tj��r|d}nd}|jj
}	|	|k�r�|j�d|||j�d|_|	|k�r�|j�d|||j�d|_q|jD]}|�|��q�dS)Nr�r4z'%s:%d: Rule '%s' has too many argumentsTz%%s:%d: Rule '%s' requires an argumentz2%s:%d: No regular expression defined for rule '%s'�
(?P<%s>%s)r3z<%s:%d: Regular expression for rule '%s' matches empty stringz3%s:%d: Invalid regular expression for rule '%s'. %s�#z6%s:%d. Make sure '#' in rule '%s' is escaped with '\#'r(rr�rz-Rule '%s' defined for an unspecified token %sz5Regular expression for rule '%s' matches empty stringz,Invalid regular expression for rule '%s'. %sz/Make sure '#' in rule '%s' is escaped with '\#'zNo rules defined for state '%s')r�r
r�r�r��inspect�	getmoduler��addr�r]r^r��co_argcountr�r(rr�r�r�r�r�rr�r�rr��validate_module)rr��fnamerrr�moduler�reqargs�nargsrP�er-�r�efuncr	r	r
r��s�


���
�
��


�
�zLexerReflect.validate_rulescCs�z	t�|�\}}Wn
tyYdSwt�d�}t�d�}i}|d7}|D]7}|�|�}|s4|�|�}|rY|�d�}	|�|	�}
|
sG|||	<nt�|�}|j	�
d|||	|
�d|_
|d7}q&dS)Nz\s*def\s+(t_[a-zA-Z_0-9]*)\(z\s*(t_[a-zA-Z_0-9]*)\s*=r4z7%s:%d: Rule %s redefined. Previously defined on line %dT)r�getsourcelinesr`r�r�r�r�r��
getsourcefiler�r()rr�lines�linen�fre�sre�	counthashrr�r-�prevrpr	r	r
r@s.�








�zLexerReflect.validate_module)Nr)rr
rrr�r�r�r�r�r�r�r�r�rr	r	r	r
r�.s
Bgr�Frmc
%
sh|durd}d}
ddi}t�}||_|	durttj�}	|r&|dur&ttj�}|r*|��rJ�fdd�t��D�}
t|
�}
d|
vrItj|
dj|
d<nt	d�}
|
�
d	�}|rdt|t�rdd
|vrd|d
|}t
|
|	|d�}|��|sy|��rytd��|r�|r�z|�||
�|ja|ja|a|WSty�Ynw|r�|�d
|j�|�d|j�|�d|j�t�|_|jD]}|j�|�q�t|jttf�r�t|jd��� |j�|_!n|j|_!|jt|j!�B|_"|j}i}|D]Q}g}|j#|D]$\}}|j$j%}|j$j&}|�'d|t(|�f�|�r|�d|t(|�|�q�|j)|D]\}}|�'d||f�|�r4|�d|||��q|||<q�|�rC|�d�|D]4}t*||||
|j+�\}}}||j,|<||j-|<||j.|<|�rxt/|�D]
\}}|�d|||��qj�qE|�0�D]0\}}|dk�r�|dk�r�|j,|�1|j,d�|j-|�1|j-d�|j.|�1|j.d��q~||_2|j,d|_3|j-d|_4||_5|j6|_7|j7�
dd�|_8|j9|_:|j9�
dd�|_;|j;�s�|	�<d�|j=|_>|j=�
dd�|_?|�0�D]M\} }|dk�r| |j9v�r|	�<d| �| |j6v�r|j8�r|	�<d| ��q�|dk�r>| |j9v�r.|j9�
dd�|j9| <| |j6v�r>|j6�
dd�|j6| <�q�|ja|ja|a|�r�|�r�|du�r�t|t@jA��r^|j}!n'd
|v�rh|
d}!n|�Bd
�}"d
� |"dd��}#tCd|#�tDtj|#dd�}!tEjF�G|!�}z	|�H||�W|StI�y�}$z|	�<d||$f�WYd}$~$|Sd}$~$ww|S)Nrmr2r�csg|]	}|t�|�f�qSr	)rN)r��k�rr	r
rzszlex.<locals>.<listcomp>�__file__r
r��__package__rZ)r�r�zCan't build lexerzlex: tokens   = %rzlex: literals = %rzlex: states   = %rrrz(lex: Adding rule %s -> '%s' (state '%s')z#lex: ==== MASTER REGEXS FOLLOW ====z"lex: state '%s' : regex[%d] = '%s'r3zNo t_error rule is definedr�z1No error rule is defined for exclusive state '%s'z2No ignore rule is defined for exclusive state '%s'r[r}z#Couldn't write lextab module %r. %s)Jr1rIrr�r��dir�dictr�r,r�r�r]rr�r�r��SyntaxErrorr�r�r�r�r�r)r�r�r�r�rErr�rirrdrGr�r
r�r�r�rMr�rr�r�r7r8r9r�rL�extendr<r5r6r@rr=rFrr>rCr&r
r?rDr^r_rarrNrbrc�dirnamer|r`)%rrOr*�optimizermr��nowarnrn�debuglog�errorlogr�r��lexobj�_items�pkg�linfor��regexsr��
regex_listrrrrr-r r5�re_text�re_namesr�r�styper�srcfiler��pkgnamerr	r+r
�lex_s

�
�
��




��

�
�



���rBcCs�|s*ztjd}t|�}|��}|��Wnty)tj�d�tj��}Ynw|r0|j	}nt	}||�|r<|j
}nt
}	|�}|sFdStj�d|j|j|j
|jf�q?)Nr4z/Reading from standard input (type EOF to end):
Tz(%s,%r,%d,%d)
)r��argvre�read�close�
IndexError�stdoutr �stdinr�r�rrrr)r��datarpr�_input�_tokenr�r	r	r
�runmains.
� �rLcs�fdd�}|S)Ncs"t�d�rt��|_|S�|_|S)Nr0)rr�r�r�r r	r
�	set_regexBs


�zTOKEN.<locals>.set_regexr	)r rNr	rMr
�TOKENAsrOr�)$rfrhr�r�r^rKrbr�
StringType�UnicodeTyper��AttributeErrorr�bytesr�r�r�rrOrrr+r1r�r�rlr�r�r�r�r��VERBOSErBrLrO�Tokenr	r	r	r
�<module>sJ!�
F

(
3
�
A"