internal EngineModule(string moduleName, IDictionary<string, object> globalsDict, SystemState systemState) { Debug.Assert(moduleName != null); globals = globalsDict; if (globals is IAttributesDictionary) globalsAdapter = globals as IAttributesDictionary; else globalsAdapter = new StringDictionaryAdapterDict(globalsDict); PythonModule pythonModule = new PythonModule(moduleName, globalsAdapter, systemState); defaultModuleScope = new ModuleScope(pythonModule); }
public InferredModule(ModuleScope module) { this.module = module; }
internal EngineModule(ModuleScope scope) { defaultModuleScope = scope; globalsAdapter = scope.Globals; globals = new AttributesDictionaryAdapter(globalsAdapter); }
internal OptimizedEngineModule(ModuleScope moduleScope) : base(moduleScope) { Debug.Assert(GlobalsAdapter is CompiledModule); }
internal ModuleScope GetModuleScope(IDictionary<string, object> locals) { if (locals == null) { // We can use defaultModuleScope in this case as we do not need to customize locals Debug.Assert(defaultModuleScope.Globals == defaultModuleScope.Locals); return defaultModuleScope; } ModuleScope scope = new ModuleScope(defaultModuleScope.Module, globalsAdapter, new StringDictionaryAdapterDict(locals)); return scope; }
private Module DoAnalyze(Modules modules, string name, Statement root) { GlobalSuite global = new GlobalSuite(root); module = new Module(modules, name, global, scopes); ModuleScope modsc; module.ModuleScope = modsc = new ModuleScope(module, null, global); PushScope(modsc); root.Walk(this); foreach (FieldAssignment fer in this.fields) { fer.Infer(module); } return module; }
internal object Run(ModuleScope moduleScope) { moduleScope = (ModuleScope)moduleScope.Clone(); moduleScope.staticData = staticData; return code(moduleScope); }
public SnippetModuleRunner(string name, SystemState state) { module = new PythonModule(name, this, state, this.Initialize); moduleScope = new ModuleScope(module); }