1
0
forked from VimPlug/jedi

Merge pull request #1342 from JCavallo/ignore_unknown_super_calls

Ignore super calls when super class cannot be inferred
This commit is contained in:
Dave Halter
2019-06-14 00:28:08 +02:00
committed by GitHub
2 changed files with 24 additions and 8 deletions

View File

@@ -233,14 +233,16 @@ class ClassContext(use_metaclass(CachedMetaClass, ClassMixin, FunctionAndClassBa
if arglist:
from jedi.evaluate import arguments
args = arguments.TreeArguments(self.evaluator, self.parent_context, arglist)
return [value for key, value in args.unpack() if key is None]
else:
if self.py__name__() == 'object' \
and self.parent_context == self.evaluator.builtins_module:
return []
return [LazyKnownContexts(
self.evaluator.builtins_module.py__getattribute__('object')
)]
lst = [value for key, value in args.unpack() if key is None]
if lst:
return lst
if self.py__name__() == 'object' \
and self.parent_context == self.evaluator.builtins_module:
return []
return [LazyKnownContexts(
self.evaluator.builtins_module.py__getattribute__('object')
)]
def py__getitem__(self, index_context_set, contextualized_node):
from jedi.evaluate.gradual.typing import LazyGenericClass

View File

@@ -276,3 +276,17 @@ qsplit = shlex.split("foo, ferwerwerw werw werw e")
for part in qsplit:
#? str()
part
# -----------------
# Unknown metaclass
# -----------------
# Github issue 1321
class Meta(object):
pass
class Test(metaclass=Meta):
def test_function(self):
result = super(Test, self).test_function()
#? []
result.