forked from VimPlug/jedi
Make sure staticmethod params are (mostly) inferred correctly, fixes #735
This commit is contained in:
@@ -19,6 +19,7 @@ from jedi.inference.value.function import \
|
||||
BaseFunctionExecutionContext, FunctionExecutionContext
|
||||
from jedi.inference.value.klass import ClassFilter
|
||||
from jedi.inference.value.dynamic_arrays import get_dynamic_array_instance
|
||||
from jedi.parser_utils import function_is_static_method
|
||||
|
||||
|
||||
class InstanceExecutedParamName(ParamName):
|
||||
@@ -40,7 +41,8 @@ class AnonymousMethodExecutionFilter(AnonymousFunctionExecutionFilter):
|
||||
self._instance = instance
|
||||
|
||||
def _convert_param(self, param, name):
|
||||
if param.position_index == 0:
|
||||
if param.position_index == 0 \
|
||||
and not function_is_static_method(self._function_value.tree_node):
|
||||
return InstanceExecutedParamName(self._instance, self._function_value, name)
|
||||
return super(AnonymousMethodExecutionFilter, self)._convert_param(param, name)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user