From 921d1008f220a428046798bd285d60c50a71e8ab Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Mon, 25 Sep 2017 11:10:09 +0200 Subject: [PATCH] First tests are now passing. --- jedi/common/context.py | 4 +++- jedi/evaluate/filters.py | 5 +++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/jedi/common/context.py b/jedi/common/context.py index 9a1f476c..b29b7c2f 100644 --- a/jedi/common/context.py +++ b/jedi/common/context.py @@ -19,7 +19,6 @@ class ContextSet(object): """ aggregated = set() for set_ in sets: - print(set_) if isinstance(set_, ContextSet): aggregated |= set_._set else: @@ -33,6 +32,9 @@ class ContextSet(object): for element in self._set: yield element + def __bool__(self): + return bool(self._set) + def __repr__(self): return '%s(%s)' % (self.__class__.__name__, ', '.join(str(s) for s in self._set)) diff --git a/jedi/evaluate/filters.py b/jedi/evaluate/filters.py index 004aec2b..c94f9758 100644 --- a/jedi/evaluate/filters.py +++ b/jedi/evaluate/filters.py @@ -7,6 +7,7 @@ from abc import abstractmethod from parso.tree import search_ancestor from jedi.evaluate import flow_analysis from jedi.evaluate.utils import to_list, unite +from jedi.common import ContextSet from jedi.parser_utils import get_parent_scope @@ -64,7 +65,7 @@ class AbstractTreeName(AbstractNameDefinition): class ContextNameMixin(object): def infer(self): - return set([self._context]) + return ContextSet(self._context) def get_root_context(self): if self.parent_context is None: @@ -128,7 +129,7 @@ class AnonymousInstanceParamName(ParamName): if param_node.position_index == 0: # This is a speed optimization, to return the self param (because # it's known). This only affects anonymous instances. - return set([self.parent_context.instance]) + return ContextSet(self.parent_context.instance) else: return self.get_param().infer()