Your IP : 18.189.143.150
U
i�f � @ sr d dl mZ d dlmZ d dlmZmZmZ dd� Zdd� Z dd � Z
d
d� Zdd
� Zdd� Z
G dd� dej�ZdS )� )�
fixer_base)�token)�syms�Node�Leafc C sz | j D ]n}|jtjkr"t|� S |jtjkr|j r|j d }|jtjkr|j r|j d }t|t�r|j dkr dS qdS )N� �
__metaclass__TF)
�children�typer �suite�
has_metaclass�simple_stmt� expr_stmt�
isinstancer �value)�parent�node� expr_nodeZ left_side� r �@/opt/alt/python38/lib64/python3.8/lib2to3/fixes/fix_metaclass.pyr s
�r c C s� | j D ]}|jtjkr d S qt| j �D ]\}}|jtjkr( qJq(td��ttjg �}| j |d d � r�| j |d }|� |�
� � |�� qV| � |� |}d S )NzNo class suite and no ':'!� )r r
r r � enumerater �COLON�
ValueErrorr �append_child�clone�remove)�cls_noder �ir � move_noder r r �fixup_parse_tree- s
r c
C s� t |j�D ]\}}|jtjkr
q(q
d S |�� ttjg �}ttj |g�}|j|d � rz|j| }|�
|�� � |�� qJ| �||� |jd jd }|jd jd } | j
|_
d S )Nr )r r r
r �SEMIr r r r r
r r �insert_child�prefix)
r r Z stmt_nodeZsemi_indr Znew_exprZnew_stmtr Z new_leaf1Z old_leaf1r r r �fixup_simple_stmtG s
r$ c C s* | j r&| j d jtjkr&| j d �� d S )N���)r r
r �NEWLINEr )r r r r �remove_trailing_newline_ s r'