def _get_module(self): name = '__main__' if self.path is not None: import_names = transform_path_to_dotted(self._evaluator.get_sys_path(), self.path) if import_names is not None: name = '.'.join(import_names) module = ModuleContext( self._evaluator, self._module_node, self.path, code_lines=self._code_lines ) imports.add_module_to_cache(self._evaluator, name, module) return module
def _get_module(self): name = '__main__' if self.path is not None: import_names = dotted_path_in_sys_path(self._evaluator.get_sys_path(), self.path) if import_names is not None: name = '.'.join(import_names) module = ModuleContext( self._evaluator, self._module_node, self.path, code_lines=self._code_lines ) imports.add_module_to_cache(self._evaluator, name, module) return module
def _get_module(self): name = '__main__' if self.path is not None: n = dotted_path_in_sys_path(self._evaluator.get_sys_path(), self.path) if n is not None: name = n module = ModuleContext( self._evaluator, self._module_node, self.path, code_lines=self._code_lines ) imports.add_module_to_cache(self._evaluator, name, module) return module
def _create(evaluator, access_handle, parent_context, *args): compiled_object = create_cached_compiled_object( evaluator, access_handle, parent_context=parent_context.compiled_object) result = _find_syntax_node_name(evaluator, access_handle) if result is None: return compiled_object module_node, tree_node, path, code_lines = result if parent_context.tree_node.get_root_node() == module_node: module_context = parent_context.get_root_context() else: module_context = ModuleContext( evaluator, module_node, path=path, code_lines=code_lines, ) # TODO this __name__ is probably wrong. name = compiled_object.get_root_context().py__name__() if name is not None: imports.add_module_to_cache(evaluator, name, module_context) tree_context = module_context.create_context( tree_node, node_is_context=True, node_is_object=True ) if tree_node.type == 'classdef': if not access_handle.is_class(): # Is an instance, not a class. tree_context, = tree_context.execute_evaluated() return MixedObject( evaluator, parent_context, compiled_object, tree_context=tree_context )