????
Current Path : /proc/self/root/lib/python3.6/site-packages/libfuturize/fixes/__pycache__/ |
Current File : //proc/self/root/lib/python3.6/site-packages/libfuturize/fixes/__pycache__/fix_print.cpython-36.pyc |
3 �c) � @ s\ d Z ddlmZmZmZ ddlmZ ddlmZm Z m Z mZ ejd�Z G dd� dej�ZdS ) a, Fixer for print. Change: "print" into "print()" "print ..." into "print(...)" "print(...)" not changed "print ... ," into "print(..., end=' ')" "print >>x, ..." into "print(..., file=x)" No changes are applied if print_function is imported from __future__ � )�patcomp�pytree� fixer_base)�token)�Name�Call�Comma�Stringz8atom< '(' [arith_expr|atom|power|term|STRING|NAME] ')' >c @ s$ e Zd ZdZdZdd� Zdd� ZdS )�FixPrintTzP simple_stmt< any* bare='print' any* > | print_stmt c C s� |st �|jd�}|r4|jttd�g |jd�� d S |jd td�ksJt �|jdd � }t|�dkrvtj |d �rvd S d } }}|r�|d t � kr�|d d� }d}dd� |d j� D �}|r�|d jd d kr�|d jdd� dkr�d}|�r2|d t jtjd�k�r2t|�dk�st �|d j� }|d d � }dd� |D �} | �rPd| d _|d k �sn|d k �sn|d k �r�|d k �r�| j| dtt|��� |d k �r�| j| dtt|��� |d k �r�| j| d|� ttd�| �} |j| _| S )NZbare�print)�prefixr � � c S s g | ]}|j tjkr|�qS � )�typer �STRING)�.0Zleafr r �/usr/lib/python3.6/fix_print.py� <listcomp>? s z&FixPrint.transform.<locals>.<listcomp>�r� �\t�\n�\r� z>>� c S s g | ]}|j � �qS r )�clone)r �argr r r r K s �sep�end�file���r! r! r! r! ���r! )r r r )�AssertionError�get�replacer r r Zchildren�len�parend_expr�matchr Zleaves�valuer �Leafr � RIGHTSHIFTr � add_kwargr �repr)�selfZnode�resultsZ bare_print�argsr r r Z string_leavesZl_argsZn_stmtr r r � transform$ sH zFixPrint.transformc C sN d|_ tj| jjt|�tjtjd�|f�}|r@|j t � � d|_ |j |� d S )Nr �=r )r r ZNodeZsymsZargumentr r* r �EQUAL�appendr )r. Zl_nodesZs_kwdZn_exprZ n_argumentr r r r, ^ s zFixPrint.add_kwargN)�__name__� __module__�__qualname__Z BM_compatibleZPATTERNr1 r, r r r r r s :r N)�__doc__Zlib2to3r r r Z lib2to3.pgen2r Zlib2to3.fixer_utilr r r r Zcompile_patternr'