Your IP : 18.117.232.108
3
� f
� @ sJ d Z ddlmZ ddlmZmZmZmZmZm Z m
Z
G dd� dej�ZdS )z�Fixer for sys.exc_{type, value, traceback}
sys.exc_type -> sys.exc_info()[0]
sys.exc_value -> sys.exc_info()[1]
sys.exc_traceback -> sys.exc_info()[2]
� )�
fixer_base)�Attr�Call�Name�Number� Subscript�Node�symsc @ s: e Zd ZdddgZdZddjdd� eD �� Zd d
� ZdS )� 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 �>/opt/alt/python36/lib64/python3.6/lib2to3/fixes/fix_sys_exc.py� <genexpr> s zFixSysExc.<genexpr>c C st |d d }t | jj|j��}ttd�|jd�}ttd�|�}|d j|d jd _|j t
|�� ttj
||jd�S )NZ attribute� �exc_info)�prefix�sys�dot� )r r �index�valuer r r r Zchildren�appendr r r Zpower)�selfZnodeZresultsZsys_attrr Zcall�attrr r r � transform s zFixSysExc.transformN)�__name__�
__module__�__qualname__r Z
BM_compatible�joinZPATTERNr r r r r r
s
r
N)
�__doc__� r Z
fixer_utilr r r r r r r ZBaseFixr
r r r r �<module> s $