Your IP : 3.144.98.61


Current Path : /opt/alt/python38/lib64/python3.8/lib2to3/fixes/__pycache__/
Upload File :
Current File : //opt/alt/python38/lib64/python3.8/lib2to3/fixes/__pycache__/fix_print.cpython-38.opt-1.pyc

U

i�f�@sldZddlmZddlmZddlmZddlmZddlmZm	Z	m
Z
mZe�d�Z
Gdd	�d	ej�Zd
S)aFixer for print.

Change:
    'print'          into 'print()'
    'print ...'      into 'print(...)'
    'print ... ,'    into 'print(..., end=" ")'
    'print >>x, ...' into 'print(..., file=x)'

No changes are applied if print_function is imported from __future__

�)�patcomp)�pytree)�token)�
fixer_base)�Name�Call�Comma�Stringz"atom< '(' [atom|STRING|NAME] ')' >c@s$eZdZdZdZdd�Zdd�ZdS)�FixPrintTzP
              simple_stmt< any* bare='print' any* > | print_stmt
              c
Cs`|�d�}|r,|�ttd�g|jd��dS|jdd�}t|�dkrXt�|d�rXdSd}}}|r�|dt	�kr�|dd�}d}|r�|dt
�tj
d�kr�|d��}|d	d�}d
d�|D�}|r�d|d_|dk	s�|dk	s�|dk	�rF|dk	�r|�|d
tt|���|dk	�r.|�|dtt|���|dk	�rF|�|d|�ttd�|�}	|j|	_|	S)NZbare�print)�prefix������ z>>�cSsg|]}|���qS�)�clone)�.0�argrr�</opt/alt/python38/lib64/python3.8/lib2to3/fixes/fix_print.py�
<listcomp>?sz&FixPrint.transform.<locals>.<listcomp>��sep�end�file)�get�replacerrrZchildren�len�parend_expr�matchrr�Leafr�
RIGHTSHIFTr�	add_kwargr	�repr)
�selfZnodeZresultsZ
bare_print�argsrrrZl_argsZn_stmtrrr�	transform%s:
�



zFixPrint.transformcCsNd|_t�|jjt|�t�tjd�|f�}|r@|�	t
��d|_|�	|�dS)Nr�=r)rrZNodeZsymsZargumentrr!r�EQUAL�appendr)r%Zl_nodesZs_kwdZn_exprZ
n_argumentrrrr#Ms
��zFixPrint.add_kwargN)�__name__�
__module__�__qualname__Z
BM_compatibleZPATTERNr'r#rrrrr
s(r
N)�__doc__rrrZpgen2rrZ
fixer_utilrrrr	Zcompile_patternrZBaseFixr
rrrr�<module>s
�

?>