From 22f20ec71571543e479816c47e0ab92d31c9b36b Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Mon, 17 Nov 2014 13:35:16 +0100 Subject: [PATCH] Treat executed params different from normal ones. --- jedi/evaluate/finder.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/jedi/evaluate/finder.py b/jedi/evaluate/finder.py index b4405b08..bded1d58 100644 --- a/jedi/evaluate/finder.py +++ b/jedi/evaluate/finder.py @@ -389,7 +389,9 @@ class NameFinder(object): if doc_params: return doc_params - if not isinstance(param, ExecutedParam): + if isinstance(param, ExecutedParam): + return res_new + param.eval(self._evaluator) + else: # Param owns no information itself. res_new += dynamic.search_params(evaluator, param) if not res_new: @@ -397,11 +399,9 @@ class NameFinder(object): t = 'tuple' if param.stars == 1 else 'dict' typ = evaluator.find_types(compiled.builtin, t)[0] res_new = evaluator.execute(typ) - if not param.assignment_details: - # this means that there are no default params, - # so just ignore it. - return res_new - return res_new + param.eval(self._evaluator) + if param.default: + res_new += evaluator.eval_element(param.default) + return res_new def _resolve_descriptors(self, types): """Processes descriptors"""