diff options
Diffstat (limited to 'plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/NestedMethodCallInspectionBase.java')
-rw-r--r-- | plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/NestedMethodCallInspectionBase.java | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/NestedMethodCallInspectionBase.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/NestedMethodCallInspectionBase.java index 484c1f8fefe0..57659d05923a 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/NestedMethodCallInspectionBase.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/NestedMethodCallInspectionBase.java @@ -16,6 +16,7 @@ package com.siyeh.ig.style; import com.intellij.psi.*; +import com.intellij.psi.util.PropertyUtil; import com.intellij.psi.util.PsiTreeUtil; import com.siyeh.InspectionGadgetsBundle; import com.siyeh.ig.BaseInspection; @@ -29,6 +30,12 @@ public class NestedMethodCallInspectionBase extends BaseInspection { */ public boolean m_ignoreFieldInitializations = true; + @SuppressWarnings("PublicField") + public boolean ignoreStaticMethods = false; + + @SuppressWarnings("PublicField") + public boolean ignoreGetterCalls = false; + @Override @NotNull public String getDisplayName() { @@ -82,6 +89,18 @@ public class NestedMethodCallInspectionBase extends BaseInspection { return; } } + final PsiMethod method = expression.resolveMethod(); + if (method == null) { + return; + } + if (ignoreStaticMethods || ignoreGetterCalls) { + if (ignoreStaticMethods && method.hasModifierProperty(PsiModifier.STATIC)) { + return; + } + if (ignoreGetterCalls && PropertyUtil.isSimpleGetter(method)) { + return; + } + } registerMethodCallError(expression); } } |