diff --git a/jedi/evaluate/compiled/context.py b/jedi/evaluate/compiled/context.py index 2f664b84..d5fd7ca9 100644 --- a/jedi/evaluate/compiled/context.py +++ b/jedi/evaluate/compiled/context.py @@ -9,7 +9,8 @@ from jedi.evaluate.utils import to_list from jedi._compatibility import force_unicode, Parameter, cast_path from jedi.cache import underscore_memoization, memoize_method from jedi.evaluate.filters import AbstractFilter -from jedi.evaluate.names import AbstractNameDefinition, ContextNameMixin +from jedi.evaluate.names import AbstractNameDefinition, ContextNameMixin, \ + ParamNameInterface from jedi.evaluate.base_context import Context, ContextSet, NO_CONTEXTS from jedi.evaluate.lazy_context import LazyKnownContext from jedi.evaluate.compiled.access import _sentinel @@ -283,7 +284,7 @@ class CompiledName(AbstractNameDefinition): )]) -class SignatureParamName(AbstractNameDefinition): +class SignatureParamName(AbstractNameDefinition, ParamNameInterface): api_type = u'param' def __init__(self, compiled_obj, signature_param): diff --git a/jedi/evaluate/names.py b/jedi/evaluate/names.py index ffaa551c..555ed0b0 100644 --- a/jedi/evaluate/names.py +++ b/jedi/evaluate/names.py @@ -121,7 +121,12 @@ class TreeNameDefinition(AbstractTreeName): return self._API_TYPES.get(definition.type, 'statement') -class ParamName(AbstractTreeName): +class ParamNameInterface(object): + def get_kind(self): + raise NotImplementedError + + +class ParamName(AbstractTreeName, ParamNameInterface): api_type = u'param' def __init__(self, parent_context, tree_name):