1
0
forked from VimPlug/jedi

Remove the ImportWrapper and replace it with something simpler.

This commit is contained in:
Dave Halter
2016-12-17 16:08:37 +01:00
parent 173c939956
commit 57857b6332
7 changed files with 53 additions and 74 deletions

View File

@@ -338,7 +338,7 @@ class Script(object):
if node.is_nested():
import_names |= set(path[-1] for path in node.paths())
for n in import_names:
imports.ImportWrapper(context, n).follow()
imports.infer_import(context, n)
elif node.type == 'expr_stmt':
types = context.eval_node(node)
for testlist in node.children[:-1:2]:

View File

@@ -500,8 +500,7 @@ class Completion(BaseDefinition):
definition = self._definition
if definition.isinstance(tree.Import):
raise DeprecationWarning
i = imports.ImportWrapper(self._evaluator, self._name)
return i.follow()
return imports.infer_import(self._evaluator, self._name)
return super(Completion, self)._follow_statements_imports()
@memoize_method

View File

@@ -59,6 +59,10 @@ def resolve_potential_imports(evaluator, definitions):
if isinstance(d, TreeNameDefinition):
imp_or_stmt = d.tree_name.get_definition()
if isinstance(imp_or_stmt, tree.Import):
s = imports.ImportWrapper(d.parent_context, d.tree_name)
new |= resolve_potential_imports(evaluator, set(s.follow(is_goto=True)))
new |= resolve_potential_imports(
evaluator,
set(imports.infer_import(
d.parent_context, d.tree_name, is_goto=True
))
)
return set(definitions) | new