Ë
‚Ö¦i
ã ó| — d Z ddlmZ ddlmZ ddlmZ ddlmZmZm Z m
Z
mZmZ d„ Z
G d„ dej « Zy )
aª Fixer for except statements with named exceptions.
The following cases will be converted:
- "except E, T:" where T is a name:
except E as T:
- "except E, T:" where T is not a name, tuple or list:
except E as t:
T = t
This is done because the target of an "except" clause must be a
name.
- "except E, T:" where T is a tuple or list literal:
except E as t:
T = t.args
é )Úpytree)Útoken)Ú
fixer_base)ÚAssignÚAttrÚNameÚis_tupleÚis_listÚsymsc # óÀ K — t | « D ]L \ }}|j t j k( sŒ$|j d j
dk( sŒA|| |dz f–— ŒN y w)Né Úexceptr )Ú enumerateÚtyper Ú
except_clauseÚchildrenÚvalue)ÚnodesÚiÚns ú1/usr/lib64/python3.12/lib2to3/fixes/fix_except.pyÚfind_exceptsr sS è ø€ ܘ%Ö ‰ˆˆ1Ø�6‰6”T×'Ñ'Ó'Ø�z‰z˜!‰}×"Ñ" hÓ.ؘ% !¡™*�oÓ%ñ !ùs ‚/A²AÁAc ó — e Zd ZdZdZd„ Zy)Ú 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
ó’ — | j }|d D �cg c] }|j « ‘Œ }}|d D �cg c] }|j « ‘Œ }}t |« D �]� \ }} t |j « dk( sŒ |j dd \ }
}}|j t
dd¬« « |j t j k7 �r t
| j « d¬« }
|j « }d|_ |j |
« |
j « }
| j }t |« D ]! \ }}t |t j « sŒ! n t! |« st# |« r t% |t' |
t
d « « « }nt% ||
« }t) |d « D ] }| j+ d
|« Œ | j+ ||« �Œv|j dk( s�Œ‡d|_ �Œ� |j d d D �cg c] }|j « ‘Œ c}|z |z }t j |j |« S c c}w c c}w c c}w )NÚtailÚcleanupé é ÚasÚ )ÚprefixÚ Úargsr
é )r Úcloner Úlenr Úreplacer r r ÚNAMEÚnew_namer" r Ú
isinstancer ÚNoder r
r r ÚreversedÚinsert_child)ÚselfÚnodeÚresultsr r r ÚchÚtry_cleanupr Úe_suiteÚEÚcommaÚNÚnew_NÚtargetÚsuite_stmtsr ÚstmtÚassignÚchildÚcr s r Ú transformzFixExcept.transform/ sï € Ø�y‰yˆà#*¨6¢?Ó3¡?˜a�—‘• ?ˆÐ3à,3°IÒ,>Ó?Ñ,> b�r—x‘x•zÐ,>ˆÐ?Ü&2°;×&?Ñ"ˆM˜7Ü�=×)Ñ)Ó*¨aÓ/Ø -× 6Ñ 6°q¸Ð ;‘
��E˜1Ø—
‘
œd 4°Ô4Ô5à—6‘6œUŸZ™ZÓ'ä §¡£¸Ô=�EØŸW™W›Y�FØ$&�F”MØ—I‘I˜eÔ$Ø!ŸK™K›M�Eð #*×"2Ñ"2�KÜ#,¨[Ö#9™˜˜4Ü% d¬F¯K©KÕ8Ù!ð $:ô ”{¤g¨a¤jÜ!'¨´°U¼DÀ»LÓ0IÓ!J™ä!'¨°Ó!6˜ô "*¨+°b°q¨/Ö!:˜Ø×,Ñ,¨Q°Õ6ð ";à×(Ñ(¨¨FÖ3Ø—X‘X ”^ð #�A–HðI '@ðN (,§}¡}°R°aÑ'8Ó9Ñ'8 !�A—G‘G•IÐ'8Ñ9¸KÑGÈ$ÑNˆÜ�{‰{˜4Ÿ9™9 hÓ/Ð/ùòW 4ùâ?ùòP :s ”H:´H?Ç:IN)Ú__name__Ú
__module__Ú__qualname__Ú
BM_compatibleÚPATTERNr? © ó r r r $ s „ Ø€Mð€Gó.0rF r N)Ú__doc__r# r Úpgen2r r Ú
fixer_utilr r r r r
r r ÚBaseFixr rE rF r Ú