mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
cleanup
This commit is contained in:
+14
-7
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2003-2007 Dave Griffith, Bas Leijdekkers
|
||||
* Copyright 2003-2010 Dave Griffith, Bas Leijdekkers
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -15,34 +15,36 @@
|
||||
*/
|
||||
package com.siyeh.ig.j2me;
|
||||
|
||||
import com.intellij.codeInspection.ui.SingleCheckboxOptionsPanel;
|
||||
import com.intellij.psi.*;
|
||||
import com.siyeh.InspectionGadgetsBundle;
|
||||
import com.siyeh.ig.BaseInspection;
|
||||
import com.siyeh.ig.BaseInspectionVisitor;
|
||||
import com.siyeh.ig.performance.VariableAccessVisitor;
|
||||
import com.siyeh.ig.psiutils.ExpressionUtils;
|
||||
import com.intellij.codeInspection.ui.SingleCheckboxOptionsPanel;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import javax.swing.*;
|
||||
import javax.swing.JComponent;
|
||||
import java.util.Set;
|
||||
|
||||
public class FieldRepeatedlyAccessedInspection extends BaseInspection {
|
||||
|
||||
|
||||
/** @noinspection PublicField*/
|
||||
public boolean m_ignoreFinalFields = false;
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
public String getID(){
|
||||
return "FieldRepeatedlyAccessedInMethod";
|
||||
}
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
public String getDisplayName() {
|
||||
return InspectionGadgetsBundle.message(
|
||||
"field.repeatedly.accessed.in.method.display.name");
|
||||
}
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
public String buildErrorString(Object... arg) {
|
||||
final String fieldName = ((PsiNamedElement) arg[0]).getName();
|
||||
@@ -51,12 +53,14 @@ public class FieldRepeatedlyAccessedInspection extends BaseInspection {
|
||||
fieldName);
|
||||
}
|
||||
|
||||
@Override
|
||||
public JComponent createOptionsPanel() {
|
||||
return new SingleCheckboxOptionsPanel(InspectionGadgetsBundle.message(
|
||||
"field.repeatedly.accessed.in.method.ignore.option"),
|
||||
this, "m_ignoreFinalFields");
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseInspectionVisitor buildVisitor() {
|
||||
return new FieldRepeatedlyAccessedVisitor();
|
||||
}
|
||||
@@ -72,8 +76,11 @@ public class FieldRepeatedlyAccessedInspection extends BaseInspection {
|
||||
method.accept(visitor);
|
||||
final Set<PsiField> fields = visitor.getOveraccessedFields();
|
||||
for(PsiField field : fields){
|
||||
if(ExpressionUtils.isConstant(field) || m_ignoreFinalFields &&
|
||||
field.hasModifierProperty(PsiModifier.FINAL)){
|
||||
if(ExpressionUtils.isConstant(field)){
|
||||
continue;
|
||||
}
|
||||
if(m_ignoreFinalFields &&
|
||||
field.hasModifierProperty(PsiModifier.FINAL)){
|
||||
continue;
|
||||
}
|
||||
registerError(nameIdentifier, field);
|
||||
|
||||
+6
-6
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2003-2005 Dave Griffith
|
||||
* Copyright 2003-2010 Dave Griffith, Bas Leijdekkers
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -13,7 +13,7 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package com.siyeh.ig.performance;
|
||||
package com.siyeh.ig.j2me;
|
||||
|
||||
import com.intellij.psi.*;
|
||||
import com.siyeh.ig.psiutils.ControlFlowUtils;
|
||||
@@ -21,17 +21,17 @@ import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
public class VariableAccessVisitor extends JavaRecursiveElementVisitor {
|
||||
class VariableAccessVisitor extends JavaRecursiveElementVisitor {
|
||||
|
||||
private final Map<PsiField,Integer> m_accessCounts =
|
||||
new HashMap<PsiField, Integer>(2);
|
||||
private final Set<PsiField> m_overAccessedFields =
|
||||
new HashSet<PsiField>(2);
|
||||
|
||||
@Override public void visitReferenceExpression(@NotNull PsiReferenceExpression ref) {
|
||||
@Override public void visitReferenceExpression(
|
||||
@NotNull PsiReferenceExpression ref) {
|
||||
super.visitReferenceExpression(ref);
|
||||
final PsiExpression qualifier = ref.getQualifierExpression();
|
||||
|
||||
if (qualifier != null && !(qualifier instanceof PsiThisExpression)) {
|
||||
return;
|
||||
}
|
||||
@@ -51,7 +51,7 @@ public class VariableAccessVisitor extends JavaRecursiveElementVisitor {
|
||||
final Integer count = accessCounts.get(field);
|
||||
if (count == null) {
|
||||
accessCounts.put(field, 1);
|
||||
} else if (count == 1) {
|
||||
} else if (count.intValue() == 1) {
|
||||
accessCounts.put(field, 2);
|
||||
} else {
|
||||
overAccessedFields.add(field);
|
||||
Reference in New Issue
Block a user