֦i d dl mZ d dlmZ d dlmZmZmZ d Zd Z d Z
d Zd Zd Z
G d
dej Zy)
)
fixer_base)token)symsNodeLeafc | j D ] }|j t j k( r
t | c S |j t j
k( sK|j sX|j d }|j t j k( s|j s|j d }t |t s|j dk( s y y)N
__metaclass__TF)
childrentyper suite
has_metaclasssimple_stmt expr_stmt
isinstancer value)parentnode expr_node left_sides 4/usr/lib64/python3.12/lib2to3/fixes/fix_metaclass.pyr r s
99
" &&
YY$**
*t}}
a(I~~/I4F4F%..q1 i.!?: c | j D ]! }|j t j k( s! y t | j D ]$ \ }}|j t
j k( s$ n t d t t j g }| j |dz d rT| j |dz }|j |j |j | j |dz d rT| j | |}y )NzNo class suite and no ':'! )r r r r
enumerater COLON
ValueErrorr append_childcloneremove)cls_noder ir
move_nodes r fixup_parse_treer$ - s !!99
" " X../499# 0 566
R E
AaCD
!%%ac*
9??,-
AaCD
!
% Dr c z t |j D ]$ \ }}|j t j k( s$ n y |j t
t j g }t
t j |g }|j |d rN|j | }|j |j |j |j |d rN| j || |j d j d }|j d j d } | j |_
y )Nr )r r r r SEMIr r r r r r r insert_childprefix)
r r" stmt_nodesemi_indr new_exprnew_stmtr# new_leaf1 old_leaf1s
r fixup_simple_stmtr/ G s $I$6$67$99
" 8 KKMDNNB'HD$$xj1H
XY
'&&x0 ioo/0
XY
' 8$!!!$--a0I""1%..q1I ''Ir c | j rI| j d j t j k( r| j d j y y y )N)r r r NEWLINEr )r s r remove_trailing_newliner3 _ s@ }}r*//5==@
b " A}r c # 6 K | j D ]! }|j t j k( s! n t d t t
|j D ] \ }}|j t j k( s$|j s1|j d }|j t j k( s^|j sk|j d }t |t s|j dk( st ||| t | |||f y w)NzNo class suite!r r
)r r r r
r listr r r r r r r/ r3 )r! r r" simple_noder left_nodes r
find_metasr8 d s !!99
" " *++ y78;t///K4H4H#,,Q/I~~/I4F4F%..q1 i.!?:%dA{;+K8K00 9s/ -DAD D
,D:DD'D7"Dc | j d d d }|r1|j }|j t j k( rn|r1|rv|j }t |t r1|j t j k7 r|j rd|_ y |j |j d d d |ruy y )Nr1 )
r popr r INDENTr r DEDENTr( extend)r
kidsr s r fixup_indentr@ { s >>$B$D
xxz99$ xxzdD!dii5<<&?{{ KK
dd+, r c e Zd ZdZdZd Zy)FixMetaclassTz
classdef