ž zyMa c@smdZddlZddlmZddlmZmZmZmZdd„Z Gdd„dej ƒZ dS( uΣFixer for operator functions. operator.isCallable(obj) -> hasattr(obj, '__call__') operator.sequenceIncludes(obj) -> operator.contains(obj) operator.isSequenceType(obj) -> isinstance(obj, collections.Sequence) operator.isMappingType(obj) -> isinstance(obj, collections.Mapping) operator.isNumberType(obj) -> isinstance(obj, numbers.Number) operator.repeat(obj, n) -> operator.mul(obj, n) operator.irepeat(obj, n) -> operator.imul(obj, n) iN(u fixer_base(uCalluNameuStringu touch_importcs‡fdd†}|S(Ncs ˆ|_|S(N(u invocation(uf(us(u?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyudecs uinvocation..dec((usudec((usu?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyu invocationsu invocationcBs|EeZdZd%ZdZdZdZdededeƒZ dd„Z e d ƒd d „ƒZ e d ƒd d„ƒZ e dƒdd„ƒZe dƒdd„ƒZe dƒdd„ƒZe dƒdd„ƒZe dƒdd„ƒZdd„Zd d!„Zd"d#„Zd$S(&u FixOperatorupreu΅ method=('isCallable'|'sequenceIncludes' |'isSequenceType'|'isMappingType'|'isNumberType' |'repeat'|'irepeat') u'(' obj=any ')'uΌ power< module='operator' trailer< '.' %(methods)s > trailer< %(obj)s > > | power< %(methods)s trailer< %(obj)s > > umethodsuobjcCs/|j||ƒ}|dk r+|||ƒSdS(N(u _check_methoduNone(uselfunodeuresultsumethod((u?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyu transform+s uFixOperator.transformuoperator.contains(%s)cCs|j||dƒS(Nucontains(u_handle_rename(uselfunodeuresults((u?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyu_sequenceIncludes0suFixOperator._sequenceIncludesuhasattr(%s, '__call__')cCsG|d}|jƒtdƒtdƒg}ttdƒ|d|jƒS(Nuobju, u '__call__'uhasattruprefix(ucloneuStringuCalluNameuprefix(uselfunodeuresultsuobjuargs((u?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyu _isCallable4s !uFixOperator._isCallableuoperator.mul(%s)cCs|j||dƒS(Numul(u_handle_rename(uselfunodeuresults((u?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyu_repeat:suFixOperator._repeatuoperator.imul(%s)cCs|j||dƒS(Nuimul(u_handle_rename(uselfunodeuresults((u?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyu_irepeat>suFixOperator._irepeatu$isinstance(%s, collections.Sequence)cCs|j||ddƒS(Nu collectionsuSequence(u_handle_type2abc(uselfunodeuresults((u?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyu_isSequenceTypeBsuFixOperator._isSequenceTypeu#isinstance(%s, collections.Mapping)cCs|j||ddƒS(Nu collectionsuMapping(u_handle_type2abc(uselfunodeuresults((u?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyu_isMappingTypeFsuFixOperator._isMappingTypeuisinstance(%s, numbers.Number)cCs|j||ddƒS(NunumbersuNumber(u_handle_type2abc(uselfunodeuresults((u?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyu _isNumberTypeJsuFixOperator._isNumberTypecCs%|dd}||_|jƒdS(Numethodi(uvalueuchanged(uselfunodeuresultsunameumethod((u?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyu_handle_renameNs uFixOperator._handle_renamecCsatd||ƒ|d}|jƒtddj||gƒƒg}ttdƒ|d|jƒS(Nuobju, u.u isinstanceuprefix(u touch_importuNoneucloneuStringujoinuCalluNameuprefix(uselfunodeuresultsumoduleuabcuobjuargs((u?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyu_handle_type2abcSs +uFixOperator._handle_type2abccCs{t|d|ddjƒ}t|tjƒrwd|kr@|St|dƒf}|j|}|j|d|ƒndS(Nu_umethodiumoduleuobjuYou should use '%s' here.( ugetattruvalueu isinstanceu collectionsuCallableustru invocationuwarninguNone(uselfunodeuresultsumethodusubuinvocation_str((u?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyu _check_methodYs  uFixOperator._check_methodNT(u__name__u __module__u __qualname__uTrueu BM_compatibleuorderumethodsuobjudictuPATTERNu transformu invocationu_sequenceIncludesu _isCallableu_repeatu_irepeatu_isSequenceTypeu_isMappingTypeu _isNumberTypeu_handle_renameu_handle_type2abcu _check_method(u __locals__((u?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyu FixOperators    u FixOperator( u__doc__u collectionsulib2to3u fixer_baseulib2to3.fixer_utiluCalluNameuStringu touch_importu invocationuBaseFixu FixOperator(((u?/opt/alt/python33/lib64/python3.3/lib2to3/fixes/fix_operator.pyu s  "