From e6d9c74ab2b823fca136e79ae50c6d8b71834704 Mon Sep 17 00:00:00 2001 From: Ekaterina Tuzova Date: Fri, 22 Mar 2013 12:16:27 +0400 Subject: [PATCH] used proper way to find __init__ method --- .../inspections/PyAttributeOutsideInitInspection.java | 7 ++++--- .../quickfix/PyMoveAttributeToInitQuickFix.java | 3 ++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/python/src/com/jetbrains/python/inspections/PyAttributeOutsideInitInspection.java b/python/src/com/jetbrains/python/inspections/PyAttributeOutsideInitInspection.java index a98be42b63de..68002fc95d72 100644 --- a/python/src/com/jetbrains/python/inspections/PyAttributeOutsideInitInspection.java +++ b/python/src/com/jetbrains/python/inspections/PyAttributeOutsideInitInspection.java @@ -4,6 +4,7 @@ import com.intellij.codeInspection.LocalInspectionToolSession; import com.intellij.codeInspection.ProblemsHolder; import com.intellij.psi.PsiElementVisitor; import com.jetbrains.python.PyBundle; +import com.jetbrains.python.PyNames; import com.jetbrains.python.inspections.quickfix.PyMoveAttributeToInitQuickFix; import com.jetbrains.python.psi.PyClass; import com.jetbrains.python.psi.PyFunction; @@ -50,9 +51,9 @@ public class PyAttributeOutsideInitInspection extends PyInspection { if (containingClass == null) return; Map attributesInInit = new HashMap(); - final PyFunction initOrNew = containingClass.findInitOrNew(true); - if (initOrNew != null) - PyClassImpl.collectInstanceAttributes(initOrNew, attributesInInit); + final PyFunction initMethod = containingClass.findMethodByName(PyNames.INIT, true); + if (initMethod != null) + PyClassImpl.collectInstanceAttributes(initMethod, attributesInInit); Map attributes = new HashMap(); PyClassImpl.collectInstanceAttributes(node, attributes); diff --git a/python/src/com/jetbrains/python/inspections/quickfix/PyMoveAttributeToInitQuickFix.java b/python/src/com/jetbrains/python/inspections/quickfix/PyMoveAttributeToInitQuickFix.java index 556d77bbc090..3f43328fbf0a 100644 --- a/python/src/com/jetbrains/python/inspections/quickfix/PyMoveAttributeToInitQuickFix.java +++ b/python/src/com/jetbrains/python/inspections/quickfix/PyMoveAttributeToInitQuickFix.java @@ -6,6 +6,7 @@ import com.intellij.openapi.project.Project; import com.intellij.psi.PsiElement; import com.intellij.psi.util.PsiTreeUtil; import com.jetbrains.python.PyBundle; +import com.jetbrains.python.PyNames; import com.jetbrains.python.psi.*; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; @@ -45,7 +46,7 @@ public class PyMoveAttributeToInitQuickFix implements LocalQuickFix { } private static boolean addDefinition(PsiElement copy, PyClass containingClass) { - PyFunction init = containingClass.findInitOrNew(false); + PyFunction init = containingClass.findMethodByName(PyNames.INIT, true); if (init == null) { final PyStatementList classStatementList = containingClass.getStatementList();