509318396
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
3

  \Ó  ã               @   s:   d Z ddlmZ ddlmZmZmZ G dd„ dejƒZdS )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               @   s   e Zd ZdZdZdd„ ZdS )ÚFixExecTzx
    exec_stmt< 'exec' a=any 'in' b=any [',' c=any] >
    |
    exec_stmt< 'exec' (not atom<'(' [any] ')'>) a=any >
    c             C   sŠ   |st ‚| j}|d }|jdƒ}|jdƒ}|jƒ g}d|d _|d k	rZ|jtƒ |jƒ gƒ |d k	rv|jtƒ |jƒ gƒ ttdƒ||jd�S )NÚaÚbÚcÚ é    Úexec)Úprefix)	ÚAssertionErrorÚsymsÚgetZcloner   Úextendr   r   r   )ÚselfZnodeZresultsr   r   r   r	   Úargs© r   ú./usr/lib64/python3.6/lib2to3/fixes/fix_exec.pyÚ	transform   s    



zFixExec.transformN)Ú__name__Ú
__module__Ú__qualname__ZBM_compatibleZPATTERNr   r   r   r   r   r      s   r   N)	Ú__doc__r
   r   Z
fixer_utilr   r   r   ZBaseFixr   r   r   r   r   Ú<module>
   s   