관리-도구
편집 파일: fix_apply.cpython-38.pyc
U i�f* � @ sR d Z ddlmZ ddlmZ ddlmZ ddlmZmZm Z G dd� dej �ZdS ) zIFixer for apply(). This converts apply(func, v, k) into (func)(*v, **k).� )�pytree)�token)� fixer_base)�Call�Comma�parenthesizec @ s e Zd ZdZdZdd� ZdS )�FixApplyTa. power< 'apply' trailer< '(' arglist< (not argument<NAME '=' any>) func=any ',' (not argument<NAME '=' any>) args=any [',' (not argument<NAME '=' any>) kwds=any] [','] > ')' > > c C s4 | j }|st�|d }|d }|�d�}|rN|j| j jkrN|jd jdkrNd S |rt|j| j jkrt|jd jdkrtd S |j}|�� }|jt j |jfkr�|j|jks�|jd jt j kr�t|�}d|_|�� }d|_|d k r�|�� }d|_t�t jd �|g}|d k �r&|�t� t�t j d�|g� d |d _t|||d�S )N�func�args�kwds� > �**�*r ���� r � )�prefix)�syms�AssertionError�get�typeZargumentZchildren�valuer Zcloner �NAMEZatomZpower� DOUBLESTARr r ZLeaf�STAR�extendr r ) �selfZnodeZresultsr r r r r Z l_newargs� r �</opt/alt/python38/lib64/python3.8/lib2to3/fixes/fix_apply.py� transform sH �� �� � zFixApply.transformN)�__name__� __module__�__qualname__Z BM_compatibleZPATTERNr r r r r r s r N)�__doc__r r Zpgen2r r Z fixer_utilr r r ZBaseFixr r r r r �<module> s