Your IP : 52.15.241.87
�
c��ff; � � � d Z ddlmZ ddlmZmZ ddlmZ ddl m
Z
d� Zd� Zd� Z
d � Zd-d�Zd� Zd
� Zd� Z e� � e
� � fd�Zd.d�Zd� Zd� Zd-d�Zd� Zd-d�Zd-d�Zd� Zd� Zd� Zd� Zd� Zh d�Z d� Z!da"da#d a$d!a%d"� Z&d#� Z'd$� Z(d%� Z)d&� Z*d'� Z+d(� Z,d)� Z-ej. ej/ hZ0d-d*�Z1ej/ ej. ej2 hZ3d+� Z4d-d,�Z5d
S )/z1Utility functions, node construction macros, etc.� )�token)�Leaf�Node)�python_symbols)�patcompc �l � t t j | t t j d� � |g� � S )N�=)r �syms�argumentr r �EQUAL)�keyword�values �9/opt/alt/python311/lib64/python3.11/lib2to3/fixer_util.py�
KeywordArgr s. � ���
��$�u�{�C�0�0�%�8�:� :� :� c �6 � t t j d� � S )N�()r r �LPAR� r r �LParenr � � ���
�C� � � r c �6 � t t j d� � S )N�))r r �RPARr r r �RParenr r r c �� � t | t � � s| g} t |t � � s
d|_ |g}t t j | t
t j dd�� � gz |z � � S )zBuild an assignment statement� r ��prefix) �
isinstance�listr r r
�atomr r r )�target�sources r �Assignr% su � ��f�d�#�#� �����f�d�#�#� ���
������ ��$�u�{�C��<�<�<�=�=��F�H� H� Hr Nc �: � t t j | |�� � S )zReturn a NAME leafr )r r �NAME)�namer s r �Namer) $ s � ���
�D��0�0�0�0r c �V � | t t j t � � |g� � gS )zA node tuple for obj.attr)r r
�trailer�Dot)�obj�attrs r �Attrr/ ( s! � ���d�l�S�U�U�D�M�2�2�3�3r c �6 � t t j d� � S )zA comma leaf�,)r r �COMMAr r r �Commar3 , s � ����S�!�!�!r c �6 � t t j d� � S )zA period (.) leaf�.)r r �DOTr r r r, r, 0 s � ��� �3���r c �� � t t j |� � � |� � � g� � }| r.|� dt t j | � � � � |S )z-A parenthesised argument list, used by Call()r )r r
r+ �clone�insert_child�arglist)�args�lparen�rparen�nodes r �ArgListr? 4 sW � ����v�|�|�~�~�v�|�|�~�~�>�?�?�D�� 7����!�T�$�,��5�5�6�6�6��Kr c �j � t t j | t |� � g� � }|�||_ |S )zA function call)r r
�powerr? r )� func_namer; r r>