File: //lib64/python3.9/lib2to3/fixes/__pycache__/fix_sys_exc.cpython-39.opt-2.pyc
a
    �DOg
  �                   @   sF   d dl mZ d dlmZmZmZmZmZmZm	Z	 G dd� dej
�ZdS )�   )�
fixer_base)�Attr�Call�Name�Number�	Subscript�Node�symsc                   @   s8   e Zd Zg d�ZdZdd�dd� eD �� Zdd� Zd	S )
�	FixSysExc)�exc_type�	exc_value�
exc_tracebackTzN
              power< 'sys' trailer< dot='.' attribute=(%s) > >
              �|c                 c   s   | ]}d | V  qdS )z'%s'N� )�.0�er   r   �1/usr/lib64/python3.9/lib2to3/fixes/fix_sys_exc.py�	<genexpr>   �    zFixSysExc.<genexpr>c                 C   st   |d d }t | j�|j��}ttd�|jd�}ttd�|�}|d j|d jd _|�	t
|�� ttj
||jd�S )NZ	attribute�    �exc_info)�prefix�sys�dot�   )r   r   �index�valuer   r   r   r   Zchildren�appendr   r   r	   Zpower)�selfZnode�resultsZsys_attrr   �call�attrr   r   r   �	transform   s    zFixSysExc.transformN)�__name__�
__module__�__qualname__r   Z
BM_compatible�joinZPATTERNr"