B ˆ f&ã@s:dZddlmZddlmZmZmZGdd„dejƒZdS)zA Fixer for imports of itertools.(imap|ifilter|izip|ifilterfalse) é)Ú fixer_base)Ú BlankLineÚsymsÚtokenc@s"eZdZdZdeƒZdd„ZdS)ÚFixItertoolsImportsTzT import_from< 'from' 'itertools' 'import' imports=any > c Csz|d}|jtjks|js"|g}n|j}xœ|ddd…D]Š}|jtjkrT|j}|}n*|jtjkrddS|jtjkstt‚|jd}|j}|dkrœd|_|  ¡q8|dkr8|  ¡|ddkr¼dnd |_q8W|jdd…pØ|g}d } x2|D]*}| �r|jtj k�r|  ¡qä| d N} qäWx*|�r<|d jtj k�r<|  ¡  ¡�qW|j�sTt |d dƒ�r`|jdk�rv|j} tƒ}| |_|SdS) NÚimportsér)ZimapZizipZifilter)Z ifilterfalseZ izip_longestéÚfÚ filterfalseÚ zip_longestTéÿÿÿÿÚvalue)ÚtyperZimport_as_nameÚchildrenrÚNAMErÚSTARÚAssertionErrorÚremoveZchangedÚCOMMAÚpopÚgetattrÚparentÚprefixr) ÚselfZnodeZresultsrrZchildÚmemberZ name_nodeÚ member_nameZ remove_commaÚp©rúH/opt/alt/python37/lib64/python3.7/lib2to3/fixes/fix_itertools_imports.pyÚ transformsD         zFixItertoolsImports.transformN)Ú__name__Ú __module__Ú __qualname__Z BM_compatibleÚlocalsZPATTERNr rrrrrs rN) Ú__doc__Zlib2to3rZlib2to3.fixer_utilrrrZBaseFixrrrrrÚs