summaryrefslogtreecommitdiff
path: root/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/style/NestedMethodCallInspectionBase.java
diff options
context:
space:
mode:
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.java19
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);
}
}