
    daf                     j    d Z ddlmZ ddlmZmZ dddiiZi Zd Zd Z	 G d	 d
ej                        Zy)z?Fix incompatible renames

Fixes:
  * sys.maxint -> sys.maxsize
   )
fixer_base)Name
attr_chainsysmaxintmaxsizec                 L    ddj                  t        t        |             z   dz   S )N(|))joinmaprepr)memberss    4/root/Python-3.12.4/Lib/lib2to3/fixes/fix_renames.py
alternatesr      s"    #dG,--33    c            	   #      K   t        t        j                               D ]J  \  } }t        |j                               D ])  \  }}|t        | |f<   d| d|d|d d| d|d + L y w)Nz3
                  import_from< 'from' module_name=z, 'import'
                      ( attr_name=z | import_as_name< attr_name=z! 'as' any >) >
                  z&
                  power< module_name=z trailer< '.' attr_name=z > any* >
                  )listMAPPINGitemsLOOKUP)modulereplaceold_attrnew_attrs       r   build_patternr      sv     0 +"&w}}"7 	+Hh)1FFH%&  85 5  + +	++s   A,A.c                   X     e Zd ZdZdj	                   e             ZdZ fdZd Z	 xZ
S )
FixRenamesTr   prec                 z    t         t        | 
   |      }|r!t        fdt	        |d      D              ry|S y)Nc              3   .   K   | ]  } |        y w)N ).0objmatchs     r   	<genexpr>z#FixRenames.match.<locals>.<genexpr>5   s     D#5:Ds   parentF)superr   r&   anyr   )selfnoderesultsr&   	__class__s      @r   r&   zFixRenames.match1   s;    j$-+DD()CDDNr   c                     |j                  d      }|j                  d      }|rI|rFt        |j                  |j                  f   }|j                  t	        ||j
                               y y y )Nmodule_name	attr_name)prefix)getr   valuer   r   r2   )r+   r,   r-   mod_namer1   r   s         r   	transformzFixRenames.transform>   s^    ;;}-KK,	 	x~~y?@Hd8I4D4DEF "8r   )__name__
__module____qualname__BM_compatibler   r   PATTERNorderr&   r6   __classcell__)r.   s   @r   r   r   *   s(    Mhh}'GEGr   r   N)__doc__ r   
fixer_utilr   r   r   r   r   r   BaseFixr   r#   r   r   <module>rB      sF     )Hy) 	4+*G## Gr   