KŠMa­ã@sydZddlmZddlmZmZdddiiZiZdd„Zd d „Z Gd d „d ej ƒZ d S)z?Fix incompatible renames Fixes: * sys.maxint -> sys.maxsize é)Ú fixer_base)ÚNameÚ attr_chainÚsysZmaxintÚmaxsizecCsddjtt|ƒƒdS)Nú(ú|ú))ÚjoinÚmapÚrepr)Zmembers©r ú>/opt/alt/python35/lib64/python3.5/lib2to3/fixes/fix_renames.pyÚ alternatessrccs{xtttjƒƒD]`\}}xQt|jƒƒD]=\}}|t||f) > z^ power< module_name=%r trailer< '.' attr_name=%r > any* > )ÚlistÚMAPPINGÚitemsÚLOOKUP)ÚmoduleÚreplaceZold_attrÚnew_attrr r rÚ build_patterns  rcsLeZdZdZdjeƒƒZdZ‡fdd†Zdd„Z ‡S)Ú FixRenamesTrZprecsXtt|ƒj‰ˆ|ƒ}|rTt‡fdd†t|dƒDƒƒrPdS|SdS)Nc3s|]}ˆ|ƒVqdS)Nr )Ú.0Úobj)Úmatchr rú 5sz#FixRenames.match..ÚparentF)ÚsuperrrÚanyr)ÚselfÚnodeÚresults)Ú __class__)rrr1s (zFixRenames.matchcCs`|jdƒ}|jdƒ}|r\|r\t|j|jf}|jt|d|jƒƒdS)NZ module_nameÚ attr_nameÚprefix)ÚgetrÚvaluerrr%)r r!r"Zmod_namer$rr r rÚ transform>s  zFixRenames.transform) Ú__name__Ú __module__Ú __qualname__Z BM_compatibler rZPATTERNÚorderrr(r r )r#rr*s  rN) Ú__doc__ÚrZ fixer_utilrrrrrrZBaseFixrr r r rÚs