From 7fff20336025730f3a79b773effa9f489bb98c42 Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Sun, 9 Sep 2018 16:20:23 +0200 Subject: [PATCH] Fix the next builtin --- jedi/plugins/stdlib.py | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/jedi/plugins/stdlib.py b/jedi/plugins/stdlib.py index c861ef92..5aa29655 100644 --- a/jedi/plugins/stdlib.py +++ b/jedi/plugins/stdlib.py @@ -15,7 +15,7 @@ from jedi._compatibility import force_unicode from jedi.plugins.base import BasePlugin from jedi import debug from jedi.evaluate.arguments import ValuesArguments, \ - repack_with_argument_clinic, AbstractArguments, TreeArguments + repack_with_argument_clinic, AbstractArguments from jedi.evaluate import analysis from jedi.evaluate import compiled from jedi.evaluate.context.instance import \ @@ -145,17 +145,14 @@ def builtins_next(iterators, defaults, evaluator): else: name = '__next__' - context_set = NO_CONTEXTS + context_set = defaults for iterator in iterators: - if isinstance(iterator, AbstractInstanceContext): - context_set = ContextSet.from_sets( - n.infer() - for filter in iterator.get_filters(include_self_names=True) - for n in filter.get(name) - ).execute_evaluated() - if context_set: - return context_set - return defaults + context_set |= ContextSet.from_sets( + n.infer() + for filter in iterator.get_filters(include_self_names=True) + for n in filter.get(name) + ).execute_evaluated() + return context_set @argument_clinic('object, name[, default], /')