a
´i ã @ sR d Z ddlmZ ddlmZ ddlmZ ddlm Z m
Z
mZ G dd„ dejƒZ
dS ) 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 @ s e Zd ZdZdZdZdd„ ZdS )ÚFixZipTzN
power< 'zip' args=trailer< '(' [any] ')' > [trailers=trailer*]
>
zfuture_builtins.zipc C sœ | |¡rd S t|ƒrd S |d ¡ }d|_g }d|v rZdd„ |d D ƒ}|D ]
}d|_qNttjtdƒ|gdd�}ttjtdƒt|gƒg| ƒ}|j|_|S ) NÚargsÚ Útrailersc S s g | ]}| ¡ ‘qS © )Úclone)Ú.0Únr r ú-/usr/lib64/python3.9/lib2to3/fixes/fix_zip.pyÚ