diff --git a/jedi/api/classes.py b/jedi/api/classes.py index caa9a2ec..bd5e2210 100644 --- a/jedi/api/classes.py +++ b/jedi/api/classes.py @@ -621,6 +621,9 @@ class Signature(Definition): @property def params(self): + """ + :return list of ParamDefinition: + """ return [ParamDefinition(self._evaluator, n) for n in self._signature.get_param_names(resolve_stars=True)] @@ -668,10 +671,15 @@ class CallSignature(Signature): class ParamDefinition(Definition): def infer_default(self): + """ + :return list of Definition: + """ return _contexts_to_definitions(self._name.infer_default()) def infer_annotation(self, **kwargs): """ + :return list of Definition: + :param execute_annotation: If False, the values are not executed and you get classes instead of instances. """ diff --git a/test/test_api/test_call_signatures.py b/test/test_api/test_call_signatures.py index c1bf1698..d8e97e38 100644 --- a/test/test_api/test_call_signatures.py +++ b/test/test_api/test_call_signatures.py @@ -315,7 +315,8 @@ def test_signature_is_definition(Script): # Now compare all the attributes that a CallSignature must also have. for attr_name in dir(definition): - dont_scan = ['defined_names', 'parent', 'goto_assignments', 'infer', 'params'] + dont_scan = ['defined_names', 'parent', 'goto_assignments', 'infer', + 'params', 'get_signatures'] if attr_name.startswith('_') or attr_name in dont_scan: continue