3  f41@sdZddlmZddlmZmZddddddd d d d d d d ddddddddddddddddddd d!d"d"d#d$d%d&d'd(d(d(d)d*d*d+d,d-0Zd.d/Zefd0d1ZGd2d3d3ej Z d4S)5z/Fix incompatible imports and module references.) fixer_base)Name attr_chainiopicklebuiltinscopyregZqueueZ socketserverZ configparserreprlibztkinter.filedialogztkinter.simpledialogztkinter.colorchooserztkinter.commondialogztkinter.dialogz tkinter.dndz tkinter.fontztkinter.messageboxztkinter.scrolledtextztkinter.constantsz tkinter.tixz tkinter.ttkZtkinterZ _markupbasewinreg_threadZ _dummy_threadzdbm.bsdzdbm.dumbzdbm.ndbmzdbm.gnuz xmlrpc.clientz xmlrpc.serverz http.clientz html.entitiesz html.parserz http.cookieszhttp.cookiejarz http.server subprocess collectionsz urllib.parsezurllib.robotparser)0StringIOZ cStringIOZcPickleZ __builtin__Zcopy_regZQueueZ SocketServerZ ConfigParserreprZ FileDialogZ tkFileDialogZ SimpleDialogZtkSimpleDialogZtkColorChooserZtkCommonDialogZDialogZTkdndZtkFontZ tkMessageBoxZ ScrolledTextZ TkconstantsZTixZttkZTkinterZ markupbase_winregZthreadZ dummy_threadZdbhashZdumbdbmZdbmZgdbmZ xmlrpclibZDocXMLRPCServerZSimpleXMLRPCServerZhttplibZhtmlentitydefsZ HTMLParserZCookieZ cookielibZBaseHTTPServerZSimpleHTTPServerZ CGIHTTPServerZcommands UserStringUserListZurlparseZ robotparsercCsddjtt|dS)N(|))joinmapr)membersr>/opt/alt/python36/lib64/python3.6/lib2to3/fixes/fix_imports.py alternates=srccsTdjdd|D}t|j}d||fVd|Vd||fVd|VdS)Nz | cSsg|] }d|qS)zmodule_name='%s'r).0keyrrr Bsz!build_pattern..zyname_import=import_name< 'import' ((%s) | multiple_imports=dotted_as_names< any* (%s) any* >) > zimport_from< 'from' (%s) 'import' ['('] ( any | import_as_name< any 'as' any > | import_as_names< any* >) [')'] > zimport_name< 'import' (dotted_as_name< (%s) 'as' any > | multiple_imports=dotted_as_names< any* dotted_as_name< (%s) 'as' any > any* >) > z3power< bare_with_attr=(%s) trailer<'.' any > any* >)rrkeys)mappingZmod_listZ bare_namesrrr build_patternAs   r!csTeZdZdZdZeZdZddZfddZ fddZ fd d Z d d Z Z S) FixImportsTcCsdjt|jS)Nr)rr!r )selfrrrr!`szFixImports.build_patterncs|j|_tt|jdS)N)r!ZPATTERNsuperr"compile_pattern)r$) __class__rrr&cs zFixImports.compile_patterncsHtt|j|}|rDd|kr@tfddt|dDr@dS|SdS)Nbare_with_attrc3s|]}|VqdS)Nr)robj)matchrr qsz#FixImports.match..parentF)r%r"r*anyr)r$noderesults)r')r*rr*js zFixImports.matchcstt|j||i|_dS)N)r%r" start_treereplace)r$Ztreefilename)r'rrr0vszFixImports.start_treecCs|jd}|rh|j}|j|}|jt||jdd|krD||j|<d|kr|j|}|r|j||n2|dd}|jj|j}|r|jt||jddS)NZ module_name)prefixZ name_importZmultiple_importsr()getvaluer r1rr3r* transform)r$r.r/Z import_modZmod_namenew_nameZ bare_namerrrr7zs     zFixImports.transform)__name__ __module__ __qualname__Z BM_compatibleZkeep_line_orderMAPPINGr Z run_orderr!r&r*r0r7 __classcell__rr)r'rr"Us  r"N) __doc__rZ fixer_utilrrr<rr!ZBaseFixr"rrrrsj