o
    bc                     @   s2   d Z ddlmZ ddlmZ G dd dejZdS )z3Fix function attribute names (f.func_x -> f.__x__).   )
fixer_base)Namec                   @   s   e Zd ZdZdZdd ZdS )FixFuncattrsTz
    power< any+ trailer< '.' attr=('func_closure' | 'func_doc' | 'func_globals'
                                  | 'func_name' | 'func_defaults' | 'func_code'
                                  | 'func_dict') > any* >
    c                 C   s2   |d d }| td|jdd   |jd d S )Nattr    z__%s__   )prefix)replacer   valuer   )selfnoderesultsr    r   2/usr/lib/python3.10/lib2to3/fixes/fix_funcattrs.py	transform   s   zFixFuncattrs.transformN)__name__
__module____qualname__BM_compatiblePATTERNr   r   r   r   r   r   	   s    r   N)__doc__ r   
fixer_utilr   BaseFixr   r   r   r   r   <module>   s    