B � f �@s2dZddlmZddlmZGdd�dej�ZdS)aT Fixer for itertools.(imap|ifilter|izip) --> (map|filter|zip) and itertools.ifilterfalse --> itertools.filterfalse (bugs 2360-2363) imports from itertools are fixed in fix_itertools_import.py If itertools is imported as something else (ie: import itertools as it; it.izip(spam, eggs)) method calls will not get fixed. �)� fixer_base)�Namec@s*eZdZdZdZde�ZdZdd�ZdS)� FixItertoolsTz7('imap'|'ifilter'|'izip'|'izip_longest'|'ifilterfalse')z� power< it='itertools' trailer< dot='.' func=%(it_funcs)s > trailer< '(' [any] ')' > > | power< func=%(it_funcs)s trailer< '(' [any] ')' > > �cCs�d}|dd}d|krV|jdkrV|d|d}}|j}|��|��|j�|�|p^|j}|�t|jdd�|d��dS)N�func��it)Z ifilterfalseZ izip_longest�dot�)�prefix)�valuer �remove�parent�replacer)�selfZnodeZresultsr rr r�r�@/opt/alt/python37/lib64/python3.7/lib2to3/fixes/fix_itertools.py� transforms    zFixItertools.transformN) �__name__� __module__� __qualname__Z BM_compatibleZit_funcs�localsZPATTERNZ run_orderrrrrrrs  rN)�__doc__�rZ fixer_utilrZBaseFixrrrrr�s