Viewing File: /opt/alt/python35/lib64/python3.5/lib2to3/fixes/__pycache__/fix_except.cpython-35.opt-2.pyc



й¼]
ã@s‡ddlmZddlmZddlmZddlmZmZmZm	Z	m
Z
mZdd„ZGdd„dej
ƒZd	S)
é)Úpytree)Útoken)Ú
fixer_base)ÚAssignÚAttrÚNameÚis_tupleÚis_listÚsymsccs\xUt|ƒD]G\}}|jtjkr
|jdjdkr
|||dfVq
WdS)NéÚexceptr)Ú	enumerateÚtyper
Ú
except_clauseÚchildrenÚvalue)ZnodesÚiÚn©rú//opt/alt/python35/lib64/python3.5/fix_except.pyÚfind_exceptssrc@s(eZdZdZdZdd„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)]) >
    cCs|j}dd„|dDƒ}dd„|dDƒ}x™t|ƒD]‹\}}t|jƒdkrD|jdd…\}}	}
|	jtdd	d
ƒƒ|
jtjkr·t|j	ƒd	d
ƒ}|
j
ƒ}d|_|
j|ƒ|j
ƒ}|j}
x-t|
ƒD]\}}t
|tjƒrPqWt|
ƒsCt|
ƒrdt|t|tdƒƒƒ}nt||ƒ}x.t|
d|…ƒD]}|jd
|ƒqŠW|j||ƒqD|
jdkrDd
|
_qDWdd„|jdd…Dƒ||}tj|j|ƒS)NcSsg|]}|jƒ‘qSr)Úclone)Ú.0rrrrú
<listcomp>2s	z'FixExcept.transform.<locals>.<listcomp>ÚtailcSsg|]}|jƒ‘qSr)r)rZchrrrr4s	ÚcleanupééÚasÚprefixú ÚÚargsrcSsg|]}|jƒ‘qSr)r)rÚcrrrr\s	é)r
rÚlenrÚreplacerrrÚNAMEÚnew_namerr r
Ú
isinstancerZNoderr	rrÚreversedZinsert_child)ÚselfZnodeÚresultsr
rZtry_cleanuprZe_suiteÚEZcommaÚNZnew_NÚtargetZsuite_stmtsrZstmtZassignZchildrrrrÚ	transform/s6		
	!
(zFixExcept.transformN)Ú__name__Ú
__module__Ú__qualname__Z
BM_compatibleZPATTERNr1rrrrr$srN)r"rZpgen2rrZ
fixer_utilrrrrr	r
rZBaseFixrrrrrÚ<module>s
.
Back to Directory File Manager