§
|<ˆjÇ ã ó\ — d dl mZ d dlZd dlmZ d dlmZ erd dlmZ G d„ d¦ « Z dS )é )ÚannotationsN)Ú
TYPE_CHECKING)Ú_invalidate_cache)ÚNodeNGc óF — e Zd ZdZd„ Zdd„Zd„ Zd„ Zddd„Zddd„Z d
„ Z
d S )ÚTransformVisitoraP A visitor for handling transforms.
The standard approach of using it is to call
:meth:`~visit` with an *astroid* module and the class
will take care of the rest, walking the tree and running the
transforms for each encountered node.
Based on its usage in AstroidManager.brain, it should not be reinstantiated.
c óB — t j t ¦ « | _ d S ©N)ÚcollectionsÚdefaultdictÚlistÚ
transforms)Úselfs úd/builddir/build/BUILD/cloudlinux-venv-1.0.12/venv/lib/python3.11/site-packages/astroid/transforms.pyÚ__init__zTransformVisitor.__init__ s € Ý%Ô1µ$Ñ7Ô7ˆŒˆˆó Únoder Úreturnc ó¬ — |j }| j | }|D ]<\ }}|� ||¦ « r* ||¦ « }|�t ¦ « |}|j |k r nŒ=|S )zdCall matching transforms for the given node if any and return the
transformed node.
)Ú __class__r r )r r Úclsr Útransform_funcÚ predicateÚrets r Ú
_transformzTransformVisitor._transform s} € ð Œnˆà”_ SÔ)ˆ
Ø)3ð
ð
Ñ%ˆN˜IØÐ I I¨d¡O¤OÐ Ø$�n TÑ*Ô*�ð �?Ý%Ñ'Ô'Ð'Ø�DØ”= CÒ'Ð'à�EøØˆr c óØ — t |d¦ « rF|j D ]>}t ||¦ « }| |¦ « }||k rt |||¦ « Œ?| |¦ « S )NÚ_astroid_fields)Úhasattrr ÚgetattrÚ_visit_genericÚsetattrr )r r ÚnameÚvalueÚvisiteds r Ú_visitzTransformVisitor._visit2 sy € Ý�4Ð*Ñ+Ô+ð 1ØÔ,ð
1ð
1�Ý dÑ+Ô+�Ø×-Ò-¨eÑ4Ô4�ؘeÒ#Ð#ݘD $¨Ñ0Ô0Ð0øØ�Š˜tÑ$Ô$Ð$r c ó ‡ — t |t ¦ « rˆ fd„|D ¦ « S t |t ¦ « rt ˆ fd„|D ¦ « ¦ « S |rt |t ¦ « r|S ‰ |¦ « S )Nc ó: •— g | ]}‰ |¦ « ‘ŒS © ©r ©Ú.0Úchildr s €r ú