Beispiel #1
0
 def _load_typeshed_builtin(self, subdir, module_name):
   """Load a pyi from typeshed."""
   mod = typeshed.parse_type_definition(
       subdir, module_name, self.python_version)
   if mod:
     return self.load_file(filename=self.PREFIX + module_name,
                           module_name=module_name, ast=mod)
   return None
Beispiel #2
0
 def _load_typeshed_builtin(self, subdir, module_name):
     """Load a pyi from typeshed."""
     loaded = typeshed.parse_type_definition(
         subdir, module_name,
         parser.PyiOptions.from_toplevel_options(self.options))
     if loaded:
         filename, mod_ast = loaded
         return self.load_file(filename=self.PREFIX + filename,
                               module_name=module_name,
                               mod_ast=mod_ast)
     return None
Beispiel #3
0
 def _load_builtin(self, subdir, module_name):
   """Load a pytd that ships with pytype or typeshed."""
   version = self.options.python_version
   # Try our own type definitions first, but then fall back to typeshed.
   mod = (pytd_utils.ParsePredefinedPyTD(subdir, module_name, version) or
          typeshed.parse_type_definition(subdir, module_name, version))
   if mod:
     log.debug("Found %s entry for %r", subdir, module_name)
     return self._load_file(filename=self.PREFIX + module_name,
                            module_name=module_name,
                            ast=mod)
   return None
Beispiel #4
0
 def _load_builtin(self, subdir, module_name):
     """Load a pytd/pyi that ships with pytype or typeshed."""
     version = self.options.python_version
     # Try our own type definitions first.
     mod = builtins.ParsePredefinedPyTD(subdir, module_name, version)
     if not mod and self.options.typeshed:
         # Fall back to typeshed.
         mod = typeshed.parse_type_definition(subdir, module_name, version)
     if mod:
         log.debug("Found %s entry for %r", subdir, module_name)
         return self._load_file(filename=self.PREFIX + module_name,
                                module_name=module_name,
                                ast=mod)
     return None
Beispiel #5
0
 def test_parse_type_definition(self):
     ast = typeshed.parse_type_definition("stdlib", "_random", (2, 7))
     self.assertIn("_random.Random", [cls.name for cls in ast.classes])
Beispiel #6
0
 def test_parse_type_definition(self):
     filename, ast = typeshed.parse_type_definition("stdlib", "_random",
                                                    (2, 7))
     self.assertEqual(os.path.basename(filename), "_random.pyi")
     self.assertIn("_random.Random", [cls.name for cls in ast.classes])
Beispiel #7
0
 def test_parse_type_definition(self):
   ast = typeshed.parse_type_definition("stdlib", "_random", (2, 7))
   self.assertIn("_random.Random", [cls.name for cls in ast.classes])