o
    "†a!  ã                   @   s,   d dl Z d dlZdd„ ZeeƒZee ƒZdS )é    Nc                    s   G ‡ fdd„dt jƒ}|S )Nc                       s    e Zd Zdd„ Z‡ fdd„ZdS )z)_generate_translators.<locals>.Translatorc                    s6   t |tjƒrˆ  |¡S t |tƒr‡ fdd„|D ƒS |S )Nc                    s   g | ]}ˆ   |¡‘qS © )Ú_visit)Ú.0Ún©Úselfr   ú+/usr/lib/python3/dist-packages/gast/astn.pyÚ
<listcomp>   s    zD_generate_translators.<locals>.Translator._visit.<locals>.<listcomp>)Ú
isinstanceÚastZASTZvisitÚlist)r   Únoder   r   r   r   	   s
   

z0_generate_translators.<locals>.Translator._visitc              	      sŒ   t |ƒj}ztˆ |ƒƒ }W n
 ty   Y d S w |jD ]}t|||  t||ƒ¡ƒ q|jD ]}zt||t||ƒƒ W q- tyC   Y q-w |S )N)ÚtypeÚ__name__ÚgetattrÚAttributeErrorÚ_fieldsÚsetattrr   Ú_attributes)r   r   ÚclsZnew_nodeZfieldÚattr©Útor   r   Úgeneric_visit   s   
þ

ÿz7_generate_translators.<locals>.Translator.generic_visitN)r   Ú
__module__Ú__qualname__r   r   r   r   r   r   Ú
Translator   s    r   )r   ZNodeTransformer)r   r   r   r   r   Ú_generate_translators   s   r   )r   Zgastr   Z	AstToGAstZ	GAstToAstr   r   r   r   Ú<module>   s
    !