Your IP : 18.222.91.173


Current Path : /opt/alt/python312/lib64/python3.12/lib2to3/fixes/__pycache__/
Upload File :
Current File : //opt/alt/python312/lib64/python3.12/lib2to3/fixes/__pycache__/fix_zip.cpython-312.pyc

�

�Q�f	��j�dZddlmZddlmZddlmZddlm	Z	m
Z
mZGd�dej�Z
y)	a7
Fixer that changes zip(seq0, seq1, ...) into list(zip(seq0, seq1, ...)
unless there exists a 'from future_builtins import zip' statement in the
top-level namespace.

We avoid the transformation if the zip() call is directly contained in
iter(<>), list(<>), tuple(<>), sorted(<>), ...join(<>), or for V in <>:.
�)�
fixer_base)�Node)�python_symbols)�Name�ArgList�in_special_contextc��eZdZdZdZdZd�Zy)�FixZipTzN
    power< 'zip' args=trailer< '(' [any] ')' > [trailers=trailer*]
    >
    zfuture_builtins.zipc��|j|�ryt|�ry|dj�}d|_g}d|vr.|dD�cgc]}|j���}}|D]	}d|_�t	t
jtd�|gd��}t	t
jtd�t|g�g|z�}|j|_|Scc}w)N�args��trailers�zip)�prefix�list)	�should_skipr�clonerr�syms�powerrr)�self�node�resultsrr�n�news       �</opt/alt/python312/lib64/python3.12/lib2to3/fixes/fix_zip.py�	transformzFixZip.transforms������D�!���d�#���v��$�$�&��������� �+2�:�+>�?�+>�a����	�+>�H�?��������4�:�:��U��T�2�2�>���4�:�:��V��g�s�e�n�=��H�I���[�[��
��
��@s�CN)�__name__�
__module__�__qualname__�
BM_compatible�PATTERN�skip_onr��rr
r
s���M��G�
$�G�r$r
N)�__doc__r
r�pytreer�pygramrr�
fixer_utilrrr�ConditionalFixr
r#r$r�<module>r*s-�����+�:�:��Z�
&�
&�r$

?>