HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.10/lib2to3/fixes/__pycache__/fix_xrange.cpython-310.opt-1.pyc
o

�i�
�@sFdZddlmZddlmZmZmZddlmZGdd�dej�Z	dS)z/Fixer that changes xrange(...) into range(...).�)�
fixer_base)�Name�Call�consuming_calls)�patcompcsheZdZdZdZ�fdd�Zdd�Zdd�Zd	d
�Zdd�Z	d
Z
e�e
�Z
dZe�e�Zdd�Z�ZS)�	FixXrangeTz�
              power<
                 (name='range'|name='xrange') trailer< '(' args=any ')' >
              rest=any* >
              cstt|��||�t�|_dS�N)�superr�
start_tree�set�transformed_xranges��selfZtree�filename��	__class__��5/usr/local/lib/python3.10/lib2to3/fixes/fix_xrange.pyr
szFixXrange.start_treecCs
d|_dSr)rr
rrr�finish_trees
zFixXrange.finish_treecCs@|d}|jdkr|�||�S|jdkr|�||�Stt|���)N�name�xrange�range)�value�transform_xrange�transform_range�
ValueError�repr�r�node�resultsrrrr�	transforms

zFixXrange.transformcCs0|d}|�td|jd��|j�t|��dS)Nrr��prefix)�replacerr"r�add�idrrrrr$szFixXrange.transform_xrangecCsjt|�|jvr1|�|�s3ttd�|d��g�}ttd�|g|jd�}|dD]}|�|�q'|SdSdS)Nr�args�listr!�rest)r%r�in_special_contextrrZcloner"Zappend_child)rrrZ
range_callZ	list_call�nrrrr*s���zFixXrange.transform_rangez3power< func=NAME trailer< '(' node=any ')' > any* >z�for_stmt< 'for' any 'in' node=any ':' any* >
            | comp_for< 'for' any 'in' node=any any* >
            | comparison< any 'in' node=any any*>
         cCsf|jdurdSi}|jjdur%|j�|jj|�r%|d|ur%|djtvS|j�|j|�o2|d|uS)NFr�func)�parent�p1�matchrr�p2)rrrrrrr)?s
�zFixXrange.in_special_context)�__name__�
__module__�__qualname__Z
BM_compatibleZPATTERNr
rr rrZP1r�compile_patternr-ZP2r/r)�
__classcell__rrrrrs	

rN)
�__doc__�rZ
fixer_utilrrrrZBaseFixrrrrr�<module>s