Your IP : 3.145.12.144


Current Path : /lib64/python2.7/lib2to3/fixes/
Upload File :
Current File : //lib64/python2.7/lib2to3/fixes/fix_throw.pyc

�
�mec@s{dZddlmZddlmZddlmZddlmZmZm	Z	m
Z
mZdejfd��YZ
dS(	s�Fixer for generator.throw(E, V, T).

g.throw(E)       -> g.throw(E)
g.throw(E, V)    -> g.throw(E(V))
g.throw(E, V, T) -> g.throw(E(V).with_traceback(T))

g.throw("foo"[, V[, T]]) will warn about string exceptions.i(tpytree(ttoken(t
fixer_base(tNametCalltArgListtAttrtis_tupletFixThrowcBseZeZdZd�ZRS(s�
    power< any trailer< '.' 'throw' >
           trailer< '(' args=arglist< exc=any ',' val=any [',' tb=any] > ')' >
    >
    |
    power< any trailer< '.' 'throw' > trailer< '(' exc=any ')' > >
    cCsP|j}|dj�}|jtjkr?|j|d�dS|jd�}|dkr^dS|j�}t|�r�g|j	dd!D]}|j�^q�}nd|_
|g}|d}d|kr6|dj�}	d|	_
t||�}
t|
t
d	��t|	g�g}|jtj|j|��n|jt||��dS(
Ntexcs+Python 3 does not support string exceptionsuvalii����utargsttbuwith_traceback(tsymstclonettypeRtSTRINGtcannot_converttgettNoneRtchildrentprefixRRRRtreplaceRtNodetpower(tselftnodetresultsRR	tvaltcR
t
throw_argsRtetwith_tb((s//usr/lib64/python2.7/lib2to3/fixes/fix_throw.pyt	transforms*	,		
	%(t__name__t
__module__tTruet
BM_compatibletPATTERNR (((s//usr/lib64/python2.7/lib2to3/fixes/fix_throw.pyRsN(t__doc__tRtpgen2RRt
fixer_utilRRRRRtBaseFixR(((s//usr/lib64/python2.7/lib2to3/fixes/fix_throw.pyt<module>s
(