def import_toplevel(self): """ import this package. """ self.pymodule = self.space.find_package(self.name) if not is_builtin_module(self.pymodule): self.rootpath = self.space.path_of_module(self.pymodule) logger.info("%s at %s", self.name, self.rootpath)
def import_module(importer, name): space = importer.space try: pymodule = space.find_relative_import(importer.filepath, name) except ImportError: pymodule = space.find_relative_import(importer.package.rootpath, name) if is_builtin_module(pymodule): import_object = AbsoluteImport() import_object.pymodule = space.find_absolute_import(name) else: mypath, _ = extract_path_and_type(pymodule) if mypath in importer.package.sources: # Is a relative import import_object = RelativeImport() else: # Is a absolute import import_object = AbsoluteImport() import_object.pymodule = space.find_absolute_import(name) import_object.importpath = name return import_object