File: //lib64/python3.9/lib2to3/fixes/__pycache__/fix_tuple_params.cpython-39.opt-2.pyc
a
    �DOg�  �                   @   s�   d dl mZ d dlmZ d dl mZ d dlmZmZmZm	Z	m
Z
mZ dd� ZG dd� dej
�Zd	d
� Zdd� Zg d
fdd�Zdd� Zd
S )�   )�pytree)�token)�
fixer_base)�Assign�Name�Newline�Number�	Subscript�symsc                 C   s   t | tj�o| jd jtjkS )N�    )�
isinstancer   �Node�children�typer   �STRING)�stmt� r   �6/usr/lib64/python3.9/lib2to3/fixes/fix_tuple_params.py�is_docstring   s    �r   c                   @   s(   e Zd ZdZdZdZdd� Zdd� ZdS )	�FixTupleParams�   Ta  
              funcdef< 'def' any parameters< '(' args=any ')' >
                       ['->' any] ':' suite=any+ >
              |
              lambda=
              lambdef< 'lambda' args=vfpdef< '(' inner=any ')' >
                       ':' body=any
              >
              c                    s�  d|v r�� ||�S g �|d }|d }|d jd jtjkrZd}|d jd j}t� � nd}d}t�tjd�� d� ��fd
d�	}|jt	j
kr�||� n<|jt	jkr�t|j�D ]$\}}	|	jt	j
kr�||	|dkd� q��s�d S �D ]}
|d |
_
q�|}|dk�r
d
�d _n&t|d j| ��r0|�d _|d }�D ]}
|d |
_
�q4�|d j||�<