예제 #1
0
 def _Import(self, node):
     for import_pair in node.names:
         module_name = import_pair.name
         alias = import_pair.asname
         first_package = module_name.split('.')[0]
         if alias is not None:
             imported = pynames.ImportedModule(self.get_module(),
                                               module_name)
             if not self._is_ignored_import(imported):
                 self.names[alias] = imported
         else:
             imported = pynames.ImportedModule(self.get_module(),
                                               first_package)
             if not self._is_ignored_import(imported):
                 self.names[first_package] = imported
예제 #2
0
 def _create_structural_attributes(self):
     result = {}
     modname = rope.base.libutils.modname(self.resource)
     extension_submodules = self.pycore._builtin_submodules(modname)
     for name, module in extension_submodules.items():
         result[name] = rope.base.builtins.BuiltinName(module)
     if self.resource is None:
         return result
     for name, resource in self._get_child_resources().items():
         result[name] = pynames.ImportedModule(self, resource=resource)
     return result
예제 #3
0
 def _ImportFrom(self, node):
     level = 0
     if node.level:
         level = node.level
     imported_module = pynames.ImportedModule(self.get_module(),
                                              node.module, level)
     if self._is_ignored_import(imported_module):
         return
     if len(node.names) == 1 and node.names[0].name == '*':
         if isinstance(self.owner_object, PyModule):
             self.owner_object.star_imports.append(
                 StarImport(imported_module))
     else:
         for imported_name in node.names:
             imported = imported_name.name
             alias = imported_name.asname
             if alias is not None:
                 imported = alias
             self.names[imported] = pynames.ImportedName(
                 imported_module, imported_name.name)