B
_ @ sb d dl mZ d dlmZ d dl mZ d dlmZmZmZm Z m
Z
mZ dd ZG dd dej
Zd S )
)pytree)token)
fixer_base)AssignAttrNameis_tupleis_listsymsc c sH xBt | D ]6\}}|jtjkr
|jd jdkr
|| |d fV q
W d S )N exceptr ) enumeratetyper
except_clausechildrenvalue)Znodesin r =/opt/alt/python37/lib64/python3.7/lib2to3/fixes/fix_except.pyfind_excepts s r c @ s e Zd ZdZdZdd ZdS ) FixExceptTa1
try_stmt< 'try' ':' (simple_stmt | suite)
cleanup=(except_clause ':' (simple_stmt | suite))+
tail=(['except' ':' (simple_stmt | suite)]
['else' ':' (simple_stmt | suite)]
['finally' ':' (simple_stmt | suite)]) >
c C s | j }dd |d D }dd |d D }x*t|D ]\}}t|jdkr6|jdd \}} }
| tdd d
|
jtjkrDt| d d
}|
}d|_|
| |
}|j}
x"t|
D ]\}}t
|tjrP qW t|
st|
rt|t|td}n
t||}x&t|
d | D ]}|d
| q W ||| q6|
jdkr6d |
_q6W dd |jd d D | | }t|j|S )Nc S s g | ]}| qS r )clone).0r r r r