Hacked By AnonymousFox
�
�Q�f� � �R � d Z ddlmZ ddlmZmZmZ G d� dej � Zy)z�Fixer for exec.
This converts usages of the exec statement into calls to a built-in
exec() function.
exec code in ns1, ns2 -> exec(code, ns1, ns2)
� )�
fixer_base)�Comma�Name�Callc � � e Zd ZdZdZd� Zy)�FixExecTzx
exec_stmt< 'exec' a=any 'in' b=any [',' c=any] >
|
exec_stmt< 'exec' (not atom<'(' [any] ')'>) a=any >
c � � | j }|d }|j d� }|j d� }|j � g}d|d _ |�)|j t � |j � g� |�)|j t � |j � g� t
t d� ||j �� S )N�a�b�c� � �exec)�prefix)�syms�get�cloner �extendr r r )�self�node�resultsr r
r r �argss �=/opt/alt/python312/lib64/python3.12/lib2to3/fixes/fix_exec.py� transformzFixExec.transform s� � ��y�y���C�L���K�K�����K�K������� �{����Q����=��K�K���!�'�'�)�,�-��=��K�K���!�'�'�)�,�-��D��L�$�t�{�{�;�;� N)�__name__�
__module__�__qualname__�
BM_compatible�PATTERNr � r r r r s � ��M��G�
<r r N) �__doc__r
r �
fixer_utilr r r �BaseFixr r! r r �<module>r% s'