forked from VimPlug/jedi
Fix the last remaining issues of the first part of the NamePart switch.
This commit is contained in:
@@ -388,6 +388,7 @@ class Script(object):
|
|||||||
if goto_path:
|
if goto_path:
|
||||||
definitions = set(self._prepare_goto(goto_path))
|
definitions = set(self._prepare_goto(goto_path))
|
||||||
|
|
||||||
|
definitions = resolve_import_paths(definitions)
|
||||||
names = [s if isinstance(s, pr.Name) else s.name for s in definitions
|
names = [s if isinstance(s, pr.Name) else s.name for s in definitions
|
||||||
if s is not imports.ImportWrapper.GlobalNamespace]
|
if s is not imports.ImportWrapper.GlobalNamespace]
|
||||||
defs = [classes.Definition(self._evaluator, name.names[-1])
|
defs = [classes.Definition(self._evaluator, name.names[-1])
|
||||||
|
|||||||
@@ -507,6 +507,7 @@ class Completion(BaseDefinition):
|
|||||||
the ``foo.docstring(fast=False)`` on every object, because it
|
the ``foo.docstring(fast=False)`` on every object, because it
|
||||||
parses all libraries starting with ``a``.
|
parses all libraries starting with ``a``.
|
||||||
"""
|
"""
|
||||||
|
definition = self._definition
|
||||||
if isinstance(definition, pr.Import):
|
if isinstance(definition, pr.Import):
|
||||||
i = imports.ImportWrapper(self._evaluator, definition)
|
i = imports.ImportWrapper(self._evaluator, definition)
|
||||||
if len(i.import_path) > 1 or not fast:
|
if len(i.import_path) > 1 or not fast:
|
||||||
|
|||||||
@@ -243,7 +243,7 @@ def save_parser(path, name, parser, pickling=True):
|
|||||||
|
|
||||||
class ParserPickling(object):
|
class ParserPickling(object):
|
||||||
|
|
||||||
version = 16
|
version = 17
|
||||||
"""
|
"""
|
||||||
Version number (integer) for file system cache.
|
Version number (integer) for file system cache.
|
||||||
|
|
||||||
|
|||||||
@@ -305,7 +305,6 @@ class FakeImport(pr.Import):
|
|||||||
|
|
||||||
class FakeName(pr.Name):
|
class FakeName(pr.Name):
|
||||||
def __init__(self, name_or_names, parent=None, start_pos=(0, 0)):
|
def __init__(self, name_or_names, parent=None, start_pos=(0, 0)):
|
||||||
start_pos = 0, 0
|
|
||||||
if isinstance(name_or_names, list):
|
if isinstance(name_or_names, list):
|
||||||
names = [(n, start_pos) for n in name_or_names]
|
names = [(n, start_pos) for n in name_or_names]
|
||||||
else:
|
else:
|
||||||
|
|||||||
@@ -291,6 +291,12 @@ class InstanceElement(use_metaclass(CachedMetaClass, pr.Base)):
|
|||||||
return [get_instance_el(self._evaluator, self.instance, command, self.is_class_var)
|
return [get_instance_el(self._evaluator, self.instance, command, self.is_class_var)
|
||||||
for command in self.var.expression_list()]
|
for command in self.var.expression_list()]
|
||||||
|
|
||||||
|
@property
|
||||||
|
@underscore_memoization
|
||||||
|
def name(self):
|
||||||
|
name = self.var.name
|
||||||
|
return helpers.FakeName(unicode(name), self, name.start_pos)
|
||||||
|
|
||||||
def __iter__(self):
|
def __iter__(self):
|
||||||
for el in self.var.__iter__():
|
for el in self.var.__iter__():
|
||||||
yield get_instance_el(self._evaluator, self.instance, el,
|
yield get_instance_el(self._evaluator, self.instance, el,
|
||||||
|
|||||||
Reference in New Issue
Block a user