관리-도구
편집 파일: fix_metaclass.cpython-36.opt-2.pyc
3 ��2a � @ 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 sx xr| j D ]h}|jtjkr t|�S |jtjkr|j r|j d }|jtjkr|j r|j d }t|t�r|j dkrdS qW dS )N� � __metaclass__TF) �children�typer �suite� has_metaclass�simple_stmt� expr_stmt� isinstancer �value)�parent�node� expr_nodeZ left_side� r �2/opt/alt/python36/lib64/python3.6/fix_metaclass.pyr s r c C s� x| j D ]}|jtjkrd S qW x,t| j �D ]\}}|jtjkr,P q,W td��ttjg �}x:| j |d d � r�| j |d }|j |j � � |j� q\W | j |� |}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� x(t |j�D ]\}}|jtjkrP qW d S |j� ttjg �}ttj |g�}x2|j|d � r~|j| }|j |j� � |j� qNW | j||� |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 j� d S )Nr ���r% )r r r �NEWLINEr )r r r r �remove_trailing_newline_ s r'