3 \n ã@sVddlmZddlmZddlmZddlmZmZmZm Z m Z Gdd„dej ƒZ dS)é)Úpytree)Útoken)Ú fixer_base)ÚNameÚCallÚAttrÚArgListÚis_tuplec@seZdZdZdZdd„ZdS)ÚFixRaiseTzB raise_stmt< 'raise' exc=any [',' val=any [',' tb=any]] > c Csl|j}|djƒ}|jtjkr2d}|j||ƒdSt|ƒrbx t|ƒrZ|jdjdjƒ}qDsz&FixRaise.transform..ÚÚtbÚNoneÚwith_traceback)Úprefixéÿÿÿÿ)ÚsymsrÚtyperÚSTRINGZcannot_convertr ZchildrenrrZNodeZ raise_stmtrÚNAMEÚvaluerrrZ simple_stmt) ÚselfZnodeZresultsrr ÚmsgÚnewrÚargsrÚeZwith_tbrrrÚ transform&s@        zFixRaise.transformN)Ú__name__Ú __module__Ú __qualname__Z BM_compatibleZPATTERNr'rrrrr sr N) rrZpgen2rrZ fixer_utilrrrrr ZBaseFixr rrrrÚs