HEX
Server: LiteSpeed
System: Linux kapuas.iixcp.rumahweb.net 5.14.0-427.42.1.el9_4.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Nov 1 14:58:02 EDT 2024 x86_64
User: mirz4654 (1666)
PHP: 8.1.33
Disabled: system,exec,escapeshellarg,escapeshellcmd,passthru,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,shell_exec,popen,pclose,dl,pfsockopen,leak,apache_child_terminate,posix_kill,posix_mkfifo,posix_setsid,posix_setuid,posix_setpgid,ini_alter,show_source,define_syslog_variables,symlink,syslog,openlog,openlog,closelog,ocinumcols,listen,chgrp,apache_note,apache_setenv,debugger_on,debugger_off,ftp_exec,dll,ftp,myshellexec,socket_bind,mail,posix_getwpuid
Upload Files
File: //opt/alt/python39/lib64/python3.9/lib2to3/__pycache__/patcomp.cpython-39.opt-2.pyc
a

XC?h��@s�dZddlZddlmZmZmZmZmZmZddl	m
Z
ddl	mZGdd�de�Z
d	d
�ZGdd�de�Zejejejdd
�Zdd�Zdd�Zdd�ZdS)z#Guido van Rossum <[email protected]>�N�)�driver�literals�token�tokenize�parse�grammar)�pytree)�pygramc@seZdZdS)�PatternSyntaxErrorN)�__name__�
__module__�__qualname__�rr�4/opt/alt/python39/lib64/python3.9/lib2to3/patcomp.pyrsrc	csLtjtjtjh}t�t�|�j�}|D] }|\}}}}}||vr&|Vq&dS�N)	r�NEWLINE�INDENT�DEDENTr�generate_tokens�io�StringIO�readline)	�input�skip�tokensZ	quintuple�type�value�start�endZ	line_textrrr�tokenize_wrappersr c@s:eZdZd
dd�Zddd�Zdd�Zdd	d
�Zdd�ZdS)�PatternCompilerNcCsZ|durtj|_tj|_nt�|�|_t�|j�|_tj|_	tj
|_tj|jt
d�|_dS)N)Zconvert)r
Zpattern_grammarrZpattern_symbols�symsrZload_grammarZSymbolsZpython_grammarZ	pygrammarZpython_symbols�pysymsZDriver�pattern_convert)�selfZgrammar_filerrr�__init__(s
zPatternCompiler.__init__Fc
Csrt|�}z|jj||d�}Wn4tjyP}ztt|��d�WYd}~n
d}~00|rd|�|�|fS|�|�SdS)N)�debug)r rZparse_tokensrZ
ParseErrorr�str�compile_node)r%rr'Z	with_treer�root�errr�compile_pattern7s$zPatternCompiler.compile_patternc
sV|j�jjkr|jd}|j�jjkrz�fdd�|jddd�D�}t|�dkrX|dStjdd�|D�ddd�}|��S|j�jj	krʇfdd�|jD�}t|�dkr�|dStj|gddd�}|��S|j�jj
kr���|jdd��}t�|�}|��Sd}|j}t|�d	k�r>|djt
jk�r>|dj}|dd�}d}t|�dk�rx|d
j�jjk�rx|d
}|dd
�}��||�}|du�r>|j}	|	d}
|
jt
jk�r�d}tj}nX|
jt
jk�r�d}tj}n>|
jt
jk�r��|	d�}}t|	�dk�r��|	d	�}n|dk�s"|dk�r>|��}tj|gg||d�}|du�rN||_|��S)Nrcsg|]}��|��qSr�r)��.0Zch�r%rr�
<listcomp>O�z0PatternCompiler.compile_node.<locals>.<listcomp>�rcSsg|]
}|g�qSrr)r/�arrrr1Rr2��min�maxcsg|]}��|��qSrr-r.r0rrr1Vr2�����)rr"ZMatcher�childrenZAlternatives�lenr	�WildcardPattern�optimizeZAlternativeZNegatedUnit�
compile_basicZNegatedPatternr�EQUALrZRepeater�STARZHUGE�PLUS�LBRACE�get_int�name)
r%�nodeZalts�pZunits�patternrE�nodes�repeatr;�childr6r7rr0rr)Cs^

 
"

zPatternCompiler.compile_nodecCs@|d}|jtjkr4tt�|j��}t�t	|�|�S|jtj
kr�|j}|��r�|tvrbt
d|��|dd�rvt
d��t�t|�S|dkr�d}n,|�d�s�t|j|d�}|dur�t
d|��|dd�r�|�|djd�g}nd}t�||�SnH|jdk�r|�|d�S|jd	k�r<|�|d�}tj|ggddd
�SdS)NrzInvalid token: %rrzCan't have details for token�any�_zInvalid symbol: %r�(�[r5)rr�STRINGr(rZ
evalStringrr	ZLeafPattern�_type_of_literal�NAME�isupper�	TOKEN_MAPr�
startswith�getattrr#r)r;ZNodePatternr=)r%rIrJrFrrZcontent�
subpatternrrrr?�s8
zPatternCompiler.compile_basiccCs
t|j�Sr)�intr)r%rFrrrrD�szPatternCompiler.get_int)N)FF)N)rr
rr&r,r)r?rDrrrrr!&s


G
#r!)rRrP�NUMBERZTOKENcCs.|d��rtjS|tjvr&tj|SdSdS)Nr)�isalpharrRrZopmap)rrrrrQ�s


rQcCs>|\}}}}|s||jvr*tj|||d�Stj|||d�SdS)N)�context)Z
number2symbolr	ZNodeZLeaf)rZ
raw_node_inforrr[r;rrrr$�sr$cCst��|�Sr)r!r,)rHrrrr,�sr,)�
__author__rZpgen2rrrrrr�r	r
�	Exceptionrr �objectr!rRrPrYrTrQr$r,rrrr�<module>s  
�