diff --git a/python/src/com/jetbrains/python/psi/impl/PyNamedParameterImpl.java b/python/src/com/jetbrains/python/psi/impl/PyNamedParameterImpl.java index e1c0a2de3892..f47f7bd2be9a 100644 --- a/python/src/com/jetbrains/python/psi/impl/PyNamedParameterImpl.java +++ b/python/src/com/jetbrains/python/psi/impl/PyNamedParameterImpl.java @@ -15,6 +15,7 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import javax.swing.*; +import java.util.Set; /** * @author yole @@ -120,10 +121,12 @@ public class PyNamedParameterImpl extends PyPresentableElementImpl flags = PyUtil.detectDecorationsAndWrappersOf(func); + if (params [0] == this && !flags.contains(PyFunction.Flag.CLASSMETHOD) && !flags.contains(PyFunction.Flag.STATICMETHOD)) { + // must be 'self' final PyClass containingClass = func.getContainingClass(); if (containingClass != null) { - return new PyClassType(containingClass, false); // TODO: check for @classmethod or @staticmethod node above us + return new PyClassType(containingClass, false); } } if (isKeywordContainer()) {