B ÍAÒ[Kã@sBdZddlmZddlmZmZmZmZmZGdd„dej ƒZ dS)z;Fixer for 'raise E(V).with_traceback(T)' -> 'raise E, V, T'é)Ú fixer_base)ÚCommaÚNodeÚLeafÚtokenÚsymsc@seZdZdZdd„ZdS)ÚFixRaisezª raise_stmt< 'raise' (power< name=any [trailer< '(' val=any* ')' >] [trailer< '.' 'with_traceback' > trailer< '(' trc=any ')' >] > | any) ['from' chain=any] >c CsÀ| d¡| d¡| d¡}}}| d¡}|dk rR| |d¡|j ¡| ¡|dk r¼|rf|dn ttjdƒ}d|_|_ttjd ƒ| ¡t ƒ| ¡t ƒ| ¡g}t t j |ƒ}|  |¡dS) NÚnameÚvalÚtrcÚchainz8explicit exception chaining is not supported in Python 2rÚNoneú Úraise)ÚgetÚwarningZ prev_siblingÚremoverrÚNAMEÚprefixÚclonerrrÚ raise_stmtÚreplace) ÚselfÚnodeÚresultsr r r r Zkidsr©rúN/opt/alt/python37/lib/python3.7/site-packages/libpasteurize/fixes/fix_raise.pyÚ transform s"     zFixRaise.transformN)Ú__name__Ú __module__Ú __qualname__ZPATTERNrrrrrrsrN) Ú__doc__Zlib2to3rZlib2to3.fixer_utilrrrrrZBaseFixrrrrrÚs