File: //usr/local/lib/python3.9/site-packages/libpasteurize/fixes/__pycache__/fix_raise.cpython-39.pyc
a
q�dgK � @ sB d Z ddlmZ ddlmZmZmZmZmZ G dd� dej �Z
dS )z;Fixer for 'raise E(V).with_traceback(T)' -> 'raise E, V, T'� )�
fixer_base)�Comma�Node�Leaf�token�symsc @ s e Zd ZdZdd� ZdS )�FixRaisez�
raise_stmt< 'raise' (power< name=any [trailer< '(' val=any* ')' >]
[trailer< '.' 'with_traceback' > trailer< '(' trc=any ')' >] > | any) ['from' chain=any] >c C s� |� d�|� d�|� d� }}}|� d�}|d urR| �|d� |j�� |�� |d ur�|rf|d n
ttjd�}d |_|_ttjd �|�� t � |�� t � |�� g}t
tj|�}|�
|� d S )
N�name�val�trc�chainz8explicit exception chaining is not supported in Python 2r �None� �raise)�get�warningZprev_sibling�remover r �NAME�prefix�cloner r r �
raise_stmt�replace) �self�node�resultsr r
r r Zkidsr � r �G/usr/local/lib/python3.9/site-packages/libpasteurize/fixes/fix_raise.py� transform s "
�zFixRaise.transformN)�__name__�
__module__�__qualname__ZPATTERNr r r r r r s r N)�__doc__Zlib2to3r Zlib2to3.fixer_utilr r r r r ZBaseFixr r r r r �<module> s