forked from VimPlug/jedi
Use proper interface to add fake Import object
This commit is contained in:
@@ -532,16 +532,17 @@ class Interpreter(Script):
|
|||||||
self._import_raw_namespace(ns)
|
self._import_raw_namespace(ns)
|
||||||
|
|
||||||
def _import_raw_namespace(self, raw_namespace):
|
def _import_raw_namespace(self, raw_namespace):
|
||||||
|
scope = self._parser.scope
|
||||||
for (variable, obj) in raw_namespace.items():
|
for (variable, obj) in raw_namespace.items():
|
||||||
module = getattr(obj, '__module__', None)
|
module = getattr(obj, '__module__', None)
|
||||||
if module:
|
if module:
|
||||||
fakeimport = self._make_fakeimport(module, variable)
|
fakeimport = self._make_fakeimport(module, variable)
|
||||||
self._parser.scope.imports.append(fakeimport)
|
scope.add_import(fakeimport)
|
||||||
continue
|
continue
|
||||||
|
|
||||||
if getattr(obj, '__file__', None):
|
if getattr(obj, '__file__', None):
|
||||||
fakeimport = self._make_fakeimport(obj.__name__)
|
fakeimport = self._make_fakeimport(obj.__name__)
|
||||||
self._parser.scope.imports.append(fakeimport)
|
scope.add_import(fakeimport)
|
||||||
continue
|
continue
|
||||||
|
|
||||||
def _make_fakeimport(self, module, variable=None):
|
def _make_fakeimport(self, module, variable=None):
|
||||||
@@ -572,7 +573,6 @@ class Interpreter(Script):
|
|||||||
namespace=modname,
|
namespace=modname,
|
||||||
start_pos=(0, 0),
|
start_pos=(0, 0),
|
||||||
end_pos=(None, None))
|
end_pos=(None, None))
|
||||||
fakeimport.parent = submodule
|
|
||||||
return fakeimport
|
return fakeimport
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user