U e5db ã@sJddlZddlmZddlmZmZmZmZdd„Z Gdd„dej ƒZ dS)éN)Ú fixer_base)ÚCallÚNameÚStringÚ touch_importcs‡fdd„}|S)Ncs ˆ|_|S©N)Ú invocation)Úf©Ús©ú2/usr/lib64/python3.8/lib2to3/fixes/fix_operator.pyÚdecszinvocation..decr )r rr r r rs rc@s¼eZdZdZdZdZdZdeeed�Zdd„Z e d ƒd d „ƒZ e d ƒd d„ƒZ e dƒdd„ƒZ e dƒdd„ƒZe dƒdd„ƒZe dƒdd„ƒZe dƒdd„ƒZdd„Zd d!„Zd"d#„Zd$S)%Ú FixOperatorTZprezµ method=('isCallable'|'sequenceIncludes' |'isSequenceType'|'isMappingType'|'isNumberType' |'repeat'|'irepeat') z'(' obj=any ')'z¼ power< module='operator' trailer< '.' %(methods)s > trailer< %(obj)s > > | power< %(methods)s trailer< %(obj)s > > )ÚmethodsÚobjcCs"| ||¡}|dk r|||ƒSdSr)Ú _check_method)ÚselfÚnodeÚresultsÚmethodr r r Ú transform+s zFixOperator.transformzoperator.contains(%s)cCs| ||d¡S)NÚcontains©Ú_handle_rename©rrrr r r Ú_sequenceIncludes0szFixOperator._sequenceIncludesz callable(%s)cCs"|d}ttdƒ| ¡g|jd�S)NrÚcallable©Úprefix)rrÚcloner)rrrrr r r Ú _isCallable4szFixOperator._isCallablezoperator.mul(%s)cCs| ||d¡S)NÚmulrrr r r Ú_repeat9szFixOperator._repeatzoperator.imul(%s)cCs| ||d¡S)NÚimulrrr r r Ú_irepeat=szFixOperator._irepeatz(isinstance(%s, collections.abc.Sequence)cCs| ||dd¡S)Núcollections.abcÚSequence©Ú_handle_type2abcrr r r Ú_isSequenceTypeAszFixOperator._isSequenceTypez'isinstance(%s, collections.abc.Mapping)cCs| ||dd¡S)Nr&ÚMappingr(rr r r Ú_isMappingTypeEszFixOperator._isMappingTypezisinstance(%s, numbers.Number)cCs| ||dd¡S)NZnumbersÚNumberr(rr r r Ú _isNumberTypeIszFixOperator._isNumberTypecCs|dd}||_| ¡dS)Nrr)ÚvalueZchanged)rrrÚnamerr r r rMs zFixOperator._handle_renamecCsFtd||ƒ|d}| ¡tdd ||g¡ƒg}ttdƒ||jd�S)Nrz, Ú.Ú isinstancer)rr rÚjoinrrr)rrrÚmoduleÚabcrÚargsr r r r)Rs zFixOperator._handle_type2abccCs^t|d|ddjƒ}t|tjjƒrZd|kr2|St|dƒf}|j|}| |d|¡dS)NÚ_rrr4rzYou should use '%s' here.) Úgetattrr/r2Ú collectionsr5ÚCallableÚstrrZwarning)rrrrÚsubZinvocation_strr r r rXs zFixOperator._check_methodN)Ú__name__Ú __module__Ú __qualname__Z BM_compatibleÚorderrrÚdictZPATTERNrrrr!r#r%r*r,r.rr)rr r r r rs2 û       r) Zcollections.abcr9Zlib2to3rZlib2to3.fixer_utilrrrrrZBaseFixrr r r r Ú s