def get_imports(project, pydefined): """A shortcut for getting the `ImportInfo` used in a scope""" pymodule = pydefined.get_module() module = module_imports.ModuleImports(project, pymodule) if pymodule == pydefined: return [stmt.import_info for stmt in module.imports] return module.get_used_imports(pydefined)
def _add_imports(self, resource, source, imports): if not imports: return source import_infos = self._get_import_infos(resource, imports) pymodule = self.pycore.get_string_module(source, resource) imports = module_imports.ModuleImports(self.pycore, pymodule) for import_info in import_infos: imports.add_import(import_info) return imports.get_changed_source()
def module_imports(self, module, imports_filter=None): return module_imports.ModuleImports(self.project, module, imports_filter)
def get_module_imports(project, pymodule): """A shortcut for creating a `module_imports.ModuleImports` object""" return module_imports.ModuleImports(project, pymodule)
def _get_import_infos(self, resource, imports): pymodule = self.pycore.get_string_module('\n'.join(imports), resource) imports = module_imports.ModuleImports(self.pycore, pymodule) return [imports.import_info for imports in imports.imports]
def module_imports(self, module, imports_filter=None): return module_imports.ModuleImports(self.pycore, module, imports_filter)
def _get_import_infos(self, resource, imports): pymodule = libutils.get_string_module( self.project, '\n'.join(imports), resource) imports = module_imports.ModuleImports(self.project, pymodule) return [imports.import_info for imports in imports.imports]