Quite a few changes to prepare arrays

This commit is contained in:
Dave Halter
2018-09-18 00:17:51 +02:00
parent 75ab83da63
commit 1b11162132
7 changed files with 116 additions and 77 deletions
+16
View File
@@ -45,6 +45,7 @@ from jedi.evaluate import compiled
from jedi.evaluate.lazy_context import LazyKnownContext
from jedi.evaluate.filters import ParserTreeFilter, TreeNameDefinition, \
ContextName
from jedi.evaluate.arguments import unpack_arglist
from jedi.evaluate.base_context import ContextSet, iterator_to_context_set, \
TreeContext
@@ -166,6 +167,21 @@ class ClassContext(use_metaclass(CachedMetaClass, TreeContext)):
"""
api_type = u'class'
@evaluator_method_cache()
def find_annotation_variables(self):
found = []
arglist = self.tree_node.get_super_arglist()
if arglist is None:
return []
for stars, node in unpack_arglist(arglist):
if stars:
continue # These are not relevant for this search.
from jedi.evaluate.pep0484 import find_unknown_type_vars
found += find_unknown_type_vars(self.parent_context, node)
return found
@evaluator_method_cache(default=())
def py__bases__(self):
arglist = self.tree_node.get_super_arglist()