MINI MINI MANI MO
3
  \                 @   s:   d Z ddlmZ ddlmZmZmZ G dd dejZdS )zFixer 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)CommaNameCallc               @   s   e Zd ZdZdZdd ZdS )FixExecTzx
    exec_stmt< 'exec' a=any 'in' b=any [',' c=any] >
    |
    exec_stmt< 'exec' (not atom<'(' [any] ')'>) a=any >
    c             C   s   | j }|d }|jd}|jd}|j g}d|d _|d k	rR|jt |j g |d k	rn|jt |j g ttd||jdS )Nabc     exec)prefix)symsgetZcloner
   extendr   r   r   )selfZnodeZresultsr   r   r   r	   args r   ./usr/lib64/python3.6/lib2to3/fixes/fix_exec.py	transform   s    
zFixExec.transformN)__name__
__module____qualname__Z
BM_compatibleZPATTERNr   r   r   r   r   r      s   r   N)	__doc__r
   r   Z
fixer_utilr   r   r   ZBaseFixr   r   r   r   r   <module>
   s   
 OHA YOOOO