mirror of
https://github.com/davidhalter/jedi.git
synced 2025-12-20 20:41:13 +08:00
@@ -212,9 +212,7 @@ class Script(object):
|
|||||||
|
|
||||||
if follow_imports:
|
if follow_imports:
|
||||||
def check(name):
|
def check(name):
|
||||||
if isinstance(name, ModuleName):
|
return name.is_import()
|
||||||
return False
|
|
||||||
return name.api_type == 'module'
|
|
||||||
else:
|
else:
|
||||||
def check(name):
|
def check(name):
|
||||||
return isinstance(name, imports.SubModuleName)
|
return isinstance(name, imports.SubModuleName)
|
||||||
|
|||||||
@@ -42,6 +42,9 @@ class AbstractNameDefinition(object):
|
|||||||
def execute_evaluated(self, *args, **kwargs):
|
def execute_evaluated(self, *args, **kwargs):
|
||||||
return self.infer().execute_evaluated(*args, **kwargs)
|
return self.infer().execute_evaluated(*args, **kwargs)
|
||||||
|
|
||||||
|
def is_import(self):
|
||||||
|
return False
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def api_type(self):
|
def api_type(self):
|
||||||
return self.parent_context.api_type
|
return self.parent_context.api_type
|
||||||
@@ -55,6 +58,10 @@ class AbstractTreeName(AbstractNameDefinition):
|
|||||||
def goto(self):
|
def goto(self):
|
||||||
return self.parent_context.evaluator.goto(self.parent_context, self.tree_name)
|
return self.parent_context.evaluator.goto(self.parent_context, self.tree_name)
|
||||||
|
|
||||||
|
def is_import(self):
|
||||||
|
imp = search_ancestor(self.tree_name, 'import_from', 'import_name')
|
||||||
|
return imp is not None
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def string_name(self):
|
def string_name(self):
|
||||||
return self.tree_name.value
|
return self.tree_name.value
|
||||||
|
|||||||
@@ -199,6 +199,11 @@ def test_goto_following_on_imports(Script):
|
|||||||
assert (g[0].line, g[0].column) != (0, 0)
|
assert (g[0].line, g[0].column) != (0, 0)
|
||||||
|
|
||||||
|
|
||||||
|
def test_goto_assignments(Script):
|
||||||
|
sys, = Script("import sys", 1, 10).goto_assignments(follow_imports=True)
|
||||||
|
assert sys.type == 'module'
|
||||||
|
|
||||||
|
|
||||||
def test_os_after_from(Script):
|
def test_os_after_from(Script):
|
||||||
def check(source, result, column=None):
|
def check(source, result, column=None):
|
||||||
completions = Script(source, column=column).completions()
|
completions = Script(source, column=column).completions()
|
||||||
|
|||||||
Reference in New Issue
Block a user