HEX
Server: nginx/1.24.0
System: Linux localhost 5.15.0-46-generic #49-Ubuntu SMP Thu Aug 4 18:03:25 UTC 2022 x86_64
User: www (1000)
PHP: 8.3.27
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: //lib/python3.10/lib2to3/fixes/__pycache__/fix_isinstance.cpython-310.pyc
o

��bcH�@s2dZddlmZddlmZGdd�dej�ZdS)a,Fixer that cleans up a tuple argument to isinstance after the tokens
in it were fixed.  This is mainly used to remove double occurrences of
tokens as a leftover of the long -> int / unicode -> str conversion.

eg.  isinstance(x, (int, long)) -> isinstance(x, (int, int))
       -> isinstance(x, int)
�)�
fixer_base)�tokenc@s eZdZdZdZdZdd�ZdS)�
FixIsinstanceTz�
    power<
        'isinstance'
        trailer< '(' arglist< any ',' atom< '('
            args=testlist_gexp< any+ >
        ')' > > ')' >
    >
    �cCs�t�}|d}|j}g}t|�}|D]8\}}	|	jtjkr9|	j|vr9|t|�dkr8||djtjkr8t	|�qq|�
|	�|	jtjkrJ|�|	j�q|rX|djtjkrX|d=t|�dkrp|j}
|
j
|d_
|
�|d�dS||dd�<|��dS)N�args�����)�set�children�	enumerate�typer�NAME�value�len�COMMA�next�append�add�parent�prefix�replace�changed)�self�node�results�names_inserted�testlistr�new_args�iterator�idx�arg�atom�r#�3/usr/lib/python3.10/lib2to3/fixes/fix_isinstance.py�	transforms.$�
�zFixIsinstance.transformN)�__name__�
__module__�__qualname__�
BM_compatible�PATTERN�	run_orderr%r#r#r#r$rs
	rN)�__doc__�r�
fixer_utilr�BaseFixrr#r#r#r$�<module>s