OwlCyberSecurity - MANAGER
Edit File: fix_tuple_params.cpython-310.pyc
o ����S�g�����������������������@���s����d�Z�ddlmZ�ddlmZ�ddlmZ�ddlmZmZm Z m Z mZmZ�dd��Z G�dd ��d ej�Zd d��Zdd ��Zg�dfdd�Zdd��ZdS�)a:��Fixer for function definitions with tuple parameters. def func(((a, b), c), d): ... -> def func(x, d): ((a, b), c) = x ... It will also support lambdas: lambda (x, y): x + y -> lambda t: t[0] + t[1] # The parens are a syntax error in Python 3 lambda (x): x + y -> lambda x: x + y ����)�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����E/opt/alt/python310/lib64/python3.10/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�jtjkr-d}|d�jd�j}t����nd}d}t�tjd���d����fd d� }|jt j krL||��n|jt jkrjt|j�D�]\}} | jt j kri|| |dkd��qW�snd�S��D�]} |d�| _ qp|}|dkr�d �d�_nt|d�j|��r�|�d�_|d�}�D�]} |d�| _ q��|d�j||�<�t|d�|t���d��D�] }||d�j|�_q�|d�����d�S�)N�lambda�suite�argsr�������r���z; ��Fc��������������������s\���t������}|����}d|_t||����}|rd|_|��|����t�t j |�����g���d�S�)Nr���� )r����new_name�clone�prefixr����replace�appendr���r ���r ���Zsimple_stmt)Z tuple_arg� add_prefix�n�argr�����endZ new_lines�selfr���r����handle_tupleC���s��� �z.FixTupleParams.transform.<locals>.handle_tuple)r"���r���)F)�transform_lambdar���r���r����INDENT�valuer���r���ZLeafr ���ZtfpdefZ typedargslist� enumerate�parentr���r����range�lenZchanged)r'����node�resultsr���r����start�indentr(����ir$����lineZafterr���r%���r���� transform.���sH��� � zFixTupleParams.transformc����������� ������C���s����|d�}|d�}t�|d��}|jtjkr"|���}d|_|�|��d�S�t|�}t|�}|�� t |��}t|dd�} |�| �����|���D�],} | jtjkrn| j |v�rndd��|| j �D��}t�tj| ���g|��}| j|_| �|��qBd�S�)Nr����body�innerr���)r���c�����������������S���s���g�|�]}|�����qS�r���)r�����.0�cr���r���r���� <listcomp>����s����z3FixTupleParams.transform_lambda.<locals>.<listcomp>)� simplify_argsr���r����NAMEr���r���r ����find_params�map_to_indexr���� tuple_namer���Z post_orderr+���r���r ���r ���Zpower) r'���r0���r1���r���r7���r8����paramsZto_indexZtup_nameZ new_paramr#���Z subscripts�newr���r���r���r)���n���s.��� � ��zFixTupleParams.transform_lambdaN)�__name__� __module__�__qualname__Z run_orderZ BM_compatibleZPATTERNr6���r)���r���r���r���r���r������s���� @r���c�����������������C���sT���|�j�tjtjfv�r|�S�|�j�tjkr$|�j�tjkr"|�jd�}�|�j�tjks|�S�td|����)Nr���zReceived unexpected node %s)r���r ���Zvfplistr���r>����vfpdefr����RuntimeError�r0���r���r���r���r=�������s��� �r=���c�����������������C���s<���|�j�tjkr t|�jd��S�|�j�tjkr|�jS�dd��|�jD��S�)Nr���c�����������������S���s ���g�|�]}|j�tjkrt|��qS�r���)r���r����COMMAr?���r9���r���r���r���r<�������s��� �zfind_params.<locals>.<listcomp>)r���r ���rG���r?���r���r���r>���r+���rI���r���r���r���r?�������s ���r?���Nc�����������������C���sZ���|d�u�ri�}t�|��D�] \}}ttt|���g}t|t�r$t|||d��q ||�||<�q |S�)N)�d)r,���r ���r����strr����listr@���)� param_listr���rK���r4����objZtrailerr���r���r���r@�������s��� r@���c�����������������C���s<���g�}|�D�]}t�|t�r|�t|���q|�|��qd�|�S�)N�_)r���rM���r!���rA����join)rN����lrO���r���r���r���rA�������s��� rA���)�__doc__r���r���Zpgen2r���r���Z fixer_utilr���r���r���r���r ���r ���r���ZBaseFixr���r=���r?���r@���rA���r���r���r���r����<module>���s���� l