Sindbad~EG File Manager
�
'Μg�� � �R � d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dl Z d dl
Z
d dlZd dlZd dl
Z
d dlZd dlZd dlmZmZmZmZ d dlmZmZmZ d dlmZmZmZ d dlmZmZ d dl Z d dl m!Z!m"Z"m#Z#m$Z$ dZ%ddddddd�Z&ee d d
gejN d dd e(e&dd
d�� d�Z)e)jU e&� G d� d� Z+ G d� dejX e+� Z- G d� dejX e+� Z. G d� dejX e+� Z/ G d� dejX � Z0e1dk( r ejd � yy)� N)�
no_tracing�verbose�requires_subprocess�requires_resource)�forget�make_legacy_pyc�unload)�create_empty_file�temp_dir�FakePath)�make_script�make_zip_script)� _run_code�_run_module_code�
run_module�run_patha� # Check basic code execution
result = ['Top level assignment']
def f():
result.append('Lower level reference')
f()
del f
# Check the sys module
import sys
run_argv0 = sys.argv[0]
run_name_in_sys_modules = __name__ in sys.modules
module_in_sys_modules = (run_name_in_sys_modules and
globals() is sys.modules[__name__].__dict__)
# Check nested operation
import runpy
nested = runpy._run_module_code('x=1\n', mod_name='<run>')
)�__name__�__file__�
__cached__�__package__�__doc__�__spec__zTop level assignmentzLower level referenceF� z<run>)�xr �
__loader__)�sys�runpy�result� run_argv0�run_name_in_sys_modules�module_in_sys_modules�nestedc � � e Zd Zg d�Zd� Zd� Zy)�CodeExecutionMixin)�name�parent�origin�cached�has_location�submodule_search_locationsc � � |j � }|j � }t |� D ]W }|j d� s�|j d� s�'||vr|j |� ||d vs�D|d j |� �Y |j d� }|j d� }|�| j |� n�|j �8| j t |j � t |j � � | j D ]5 }d|z }|t ||� f}|t ||� f}| j ||� �7 | j t |� t |� � |D ]"