From d6ffc80f0eb9a369b7bd1681bb5c16133a09c32e Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Wed, 2 Apr 2014 11:39:45 +0200 Subject: [PATCH] cast pr.Function to er.Function even in the api. --- jedi/api/classes.py | 5 +++++ test/test_api/test_api_classes.py | 1 + 2 files changed, 6 insertions(+) diff --git a/jedi/api/classes.py b/jedi/api/classes.py index 346798f9..f26e803e 100644 --- a/jedi/api/classes.py +++ b/jedi/api/classes.py @@ -298,6 +298,11 @@ class BaseDefinition(object): stripped = self._definition if isinstance(stripped, pr.Name): stripped = stripped.parent + # We should probably work in `Finder._names_to_types` here. + if isinstance(stripped, pr.Function): + stripped = er.Function(self._evaluator, stripped) + elif isinstance(stripped, pr.Class): + stripped = er.Class(self._evaluator, stripped) if stripped.isinstance(pr.Statement): return self._evaluator.eval_statement(stripped) diff --git a/test/test_api/test_api_classes.py b/test/test_api/test_api_classes.py index ecb89aa0..c0a04288 100644 --- a/test/test_api/test_api_classes.py +++ b/test/test_api/test_api_classes.py @@ -139,3 +139,4 @@ def test_signature_params(): check(Script(s).goto_definitions()) check(Script(s).goto_assignments()) + check(Script(s + '\nbar=foo\nbar').goto_assignments())