§
    ZQdb  ã                   ób   — d Z ddlZddlmZ ddlmZmZmZm	Z	 d„ Z
 G d„ dej        ¦  «        ZdS )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_importc                 ó   ‡ — ˆ fd„}|S )Nc                 ó   •— ‰| _         | S ©N)Ú
invocation)ÚfÚss    €ú1/usr/lib/python3.11/lib2to3/fixes/fix_operator.pyÚdeczinvocation.<locals>.dec   s   ø€ ØˆŒØˆó    © )r   r   s   ` r   r   r      s#   ø€ ðð ð ð ð ð €Jr   c                   ón  — e Zd ZdZdZdZdZd eee¬¦  «        z  Zd„ Z	 e
d¦  «        d	„ ¦   «         Z e
d
¦  «        d„ ¦   «         Z e
d¦  «        d„ ¦   «         Z e
d¦  «        d„ ¦   «         Z e
d¦  «        d„ ¦   «         Z e
d¦  «        d„ ¦   «         Z e
d¦  «        d„ ¦   «         Zd„ Zd„ Zd„ ZdS )ÚFixOperatorTÚprezµ
              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Úobjc                 óN   — |                       ||¦  «        }|� |||¦  «        S d S r
   )Ú_check_method)ÚselfÚnodeÚresultsÚmethods       r   Ú	transformzFixOperator.transform+   s7   € Ø×#Ò# D¨'Ñ2Ô2ˆØÐØ�6˜$ Ñ(Ô(Ð(ð Ðr   zoperator.contains(%s)c                 ó0   — |                       ||d¦  «        S )NÚcontains©Ú_handle_rename©r   r   r   s      r   Ú_sequenceIncludeszFixOperator._sequenceIncludes0   s   € à×"Ò" 4¨°*Ñ=Ô=Ð=r   zcallable(%s)c                 ó€   — |d         }t          t          d¦  «        |                     ¦   «         g|j        ¬¦  «        S )Nr   Úcallable©Úprefix)r   r   Úcloner'   )r   r   r   r   s       r   Ú_isCallablezFixOperator._isCallable4   s4   € à�eŒnˆÝ•D˜Ñ$Ô$ s§y¢y¡{¤{ m¸D¼KÐHÑHÔHÐHr   zoperator.mul(%s)c                 ó0   — |                       ||d¦  «        S )NÚmulr    r"   s      r   Ú_repeatzFixOperator._repeat9   s   € à×"Ò" 4¨°%Ñ8Ô8Ð8r   zoperator.imul(%s)c                 ó0   — |                       ||d¦  «        S )NÚimulr    r"   s      r   Ú_irepeatzFixOperator._irepeat=   s   € à×"Ò" 4¨°&Ñ9Ô9Ð9r   z(isinstance(%s, collections.abc.Sequence)c                 ó2   — |                       ||dd¦  «        S )Núcollections.abcÚSequence©Ú_handle_type2abcr"   s      r   Ú_isSequenceTypezFixOperator._isSequenceTypeA   s   € à×$Ò$ T¨7Ð4EÀzÑRÔRÐRr   z'isinstance(%s, collections.abc.Mapping)c                 ó2   — |                       ||dd¦  «        S )Nr1   ÚMappingr3   r"   s      r   Ú_isMappingTypezFixOperator._isMappingTypeE   s   € à×$Ò$ T¨7Ð4EÀyÑQÔQÐQr   zisinstance(%s, numbers.Number)c                 ó2   — |                       ||dd¦  «        S )NÚnumbersÚNumberr3   r"   s      r   Ú_isNumberTypezFixOperator._isNumberTypeI   s   € à×$Ò$ T¨7°I¸xÑHÔHÐHr   c                 óX   — |d         d         }||_         |                     ¦   «          d S )Nr   r   )ÚvalueÚchanged)r   r   r   Únamer   s        r   r!   zFixOperator._handle_renameM   s.   € Ø˜Ô" 1Ô%ˆØˆŒØ�ŠÑÔÐÐÐr   c                 óò   — t          d ||¦  «         |d         }|                     ¦   «         t          dd                     ||g¦  «        z   ¦  «        g}t	          t          d¦  «        ||j        ¬¦  «        S )Nr   z, ú.Ú
isinstancer&   )r   r(   r   Újoinr   r   r'   )r   r   r   ÚmoduleÚabcr   Úargss          r   r4   zFixOperator._handle_type2abcR   sk   € Ý�T˜6 4Ñ(Ô(Ð(Ø�eŒnˆØ—	’	‘”�V D¨3¯8ª8°V¸S°MÑ+BÔ+BÑ$BÑCÔCÐDˆÝ•D˜Ñ&Ô&¨°T´[ÐAÑAÔAÐAr   c                 ó
  — t          | d|d         d         j        z   ¦  «        }t          |t          j        j        ¦  «        r?d|v r|S t          |d         ¦  «        f}|j        |z  }|                      |d|z  ¦  «         d S )NÚ_r   r   rE   r   zYou should use '%s' here.)	Úgetattrr>   rC   ÚcollectionsrF   ÚCallableÚstrr   Úwarning)r   r   r   r   ÚsubÚinvocation_strs         r   r   zFixOperator._check_methodX   s‹   € Ý˜˜s W¨XÔ%6°qÔ%9Ô%?Ñ?Ñ@Ô@ˆÝ�f�kœoÔ6Ñ7Ô7ð 	QØ˜7Ð"Ð"Ø�å˜7 5œ>Ñ*Ô*Ð,�Ø!'Ô!2°SÑ!8�Ø—’˜TÐ#>ÀÑ#OÑPÔPÐPØˆtr   N)Ú__name__Ú
__module__Ú__qualname__ÚBM_compatibleÚorderr   r   ÚdictÚPATTERNr   r   r#   r)   r,   r/   r5   r8   r<   r!   r4   r   r   r   r   r   r      s§  € € € € € Ø€MØ€Eð€Gð
 €Cðð
 �D ¨cÐ2Ñ2Ô2ñ3€Gð)ð )ð )ð
 €ZÐ'Ñ(Ô(ð>ð >ñ )Ô(ð>ð €Z�ÑÔðIð Iñ  ÔðIð €ZÐ"Ñ#Ô#ð9ð 9ñ $Ô#ð9ð €ZÐ#Ñ$Ô$ð:ð :ñ %Ô$ð:ð €ZÐ:Ñ;Ô;ðSð Sñ <Ô;ðSð €ZÐ9Ñ:Ô:ðRð Rñ ;Ô:ðRð €ZÐ0Ñ1Ô1ðIð Iñ 2Ô1ðIðð ð ð
Bð Bð Bð	ð 	ð 	ð 	ð 	r   r   )Ú__doc__Úcollections.abcrK   Úlib2to3r   Úlib2to3.fixer_utilr   r   r   r   r   ÚBaseFixr   r   r   r   ú<module>r]      s¥   ðð	ð 	ð Ð Ð Ð ð Ð Ð Ð Ð Ð Ø ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?Ð ?ðð ð ðGð Gð Gð Gð G�*Ô$ñ Gô Gð Gð Gð Gr   