Your IP : 18.226.166.207


Current Path : /lib64/python3.8/lib2to3/fixes/__pycache__/
Upload File :
Current File : //lib64/python3.8/lib2to3/fixes/__pycache__/fix_operator.cpython-38.opt-1.pyc

U

e5db
�@sNdZddlZddlmZddlmZmZmZm	Z	dd�Z
Gdd�dej�ZdS)	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)�Call�Name�String�touch_importcs�fdd�}|S)Ncs
�|_|S�N)�
invocation)�f��s��2/usr/lib64/python3.8/lib2to3/fixes/fix_operator.py�decszinvocation.<locals>.decr)rrrr
r
rsrc@s�eZdZdZdZdZdZdeeed�Zdd�Z	e
d	�d
d��Ze
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)
�__doc__Zcollections.abcr9Zlib2to3rZlib2to3.fixer_utilrrrrrZBaseFixrrrrr
�<module>s


?>