B
II* @ sN d Z ddlZddlmZ ddlmZmZmZm Z dd Z
G dd dejZdS ) a Fixer for operator functions.
operator.isCallable(obj) -> callable(obj)
operator.sequenceIncludes(obj) -> operator.contains(obj)
operator.isSequenceType(obj) -> isinstance(obj, collections.abc.Sequence)
operator.isMappingType(obj) -> isinstance(obj, collections.abc.Mapping)
operator.isNumberType(obj) -> isinstance(obj, numbers.Number)
operator.repeat(obj, n) -> operator.mul(obj, n)
operator.irepeat(obj, n) -> operator.imul(obj, n)
N)
fixer_base)CallNameStringtouch_importc s fdd}|S )Nc s
| _ | S )N)
invocation)f)s ?/opt/alt/python37/lib64/python3.7/lib2to3/fixes/fix_operator.pydec s zinvocation..decr
)r r r
)r r r s r c @ s e Zd ZdZdZdZdZdeeed Zdd Z e
d d
d Ze
dd
d Ze
ddd Z
e
ddd Ze
ddd Ze
ddd Ze
ddd 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 > >
)methodsobjc C s" | ||}|d k r|||S d S )N)
_check_method)selfnoderesultsmethodr
r
r transform+ s zFixOperator.transformzoperator.contains(%s)c C s | ||dS )Ncontains)_handle_rename)r r r r
r
r _sequenceIncludes0 s zFixOperator._sequenceIncludeszcallable(%s)c C s" |d }t td| g|jdS )Nr callable)prefix)r r cloner )r r r r r
r
r _isCallable4 s zFixOperator._isCallablezoperator.mul(%s)c C s | ||dS )Nmul)r )r r r r
r
r _repeat9 s zFixOperator._repeatzoperator.imul(%s)c C s | ||dS )Nimul)r )r r r r
r
r _irepeat= s zFixOperator._irepeatz(isinstance(%s, collections.abc.Sequence)c C s | ||ddS )Nzcollections.abcSequence)_handle_type2abc)r r r r
r
r _isSequenceTypeA s zFixOperator._isSequenceTypez'isinstance(%s, collections.abc.Mapping)c C s | ||ddS )Nzcollections.abcMapping)r" )r r r r
r
r _isMappingTypeE s zFixOperator._isMappingTypezisinstance(%s, numbers.Number)c C s | ||ddS )NZnumbersNumber)r" )r r r r
r
r
_isNumberTypeI s zFixOperator._isNumberTypec C s |d d }||_ | d S )Nr r )valueZchanged)r r r namer r
r
r r M s zFixOperator._handle_renamec C sF t d || |d }| tdd||g g}ttd||jdS )Nr z, .
isinstance)r )r r r joinr r r )r r r moduleabcr argsr
r
r r" R s zFixOperator._handle_type2abcc C s^ t | d|d d j }t|tjjrZd|kr2|S t|d f}|j| }| |d| d S )N_r r r- r zYou should use '%s' here.) getattrr( r+ collectionsr. Callablestrr Zwarning)r r r r subZinvocation_strr
r
r r X s
zFixOperator._check_methodN)__name__
__module____qualname__Z
BM_compatibleorderr r dictZPATTERNr r r r r r r# r% r' r r" r r
r
r
r r
s r
)
__doc__Zcollections.abcr2 Zlib2to3r Zlib2to3.fixer_utilr r r r r ZBaseFixr
r
r
r
r
s