File: //lib64/python3.9/lib2to3/fixes/__pycache__/fix_isinstance.cpython-39.opt-1.pyc
a
    �DOgH  �                   @   s2   d Z ddlmZ ddlmZ G dd� 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    e Zd ZdZdZdZdd� ZdS )�
FixIsinstanceTz�
    power<
        'isinstance'
        trailer< '(' arglist< any ',' atom< '('
            args=testlist_gexp< any+ >
        ')' > > ')' >
    >
    �   c                 C   s�   t � }|d }|j}g }t|�}|D ]p\}}	|	jtjkrr|	j|v rr|t|�d k r�||d  jtjkr�t	|� q$q$|�
|	� |	jtjkr$|�|	j� q$|r�|d jtjkr�|d= t|�dkr�|j}
|
j
|d _
|
�|d � n||d d �<