Slight refactoring of my changes to reduce complexity

This commit is contained in:
Per Abich committed 2022-05-09 09:12:33 +02:00
1 parent f85a635669
commit d0ed105b90
1 file changed
+5 -12
@@ -22,7 +22,6 @@ import net.sourceforge.pmd.lang.java.ast.ASTPrimarySuffix;
import net.sourceforge.pmd.lang.java.ast.ASTRecordDeclaration;
import net.sourceforge.pmd.lang.java.ast.ASTResultType;
import net.sourceforge.pmd.lang.java.ast.ASTType;
import net.sourceforge.pmd.lang.java.ast.ASTVariableDeclarator;
import net.sourceforge.pmd.lang.java.ast.ASTVariableDeclaratorId;
import net.sourceforge.pmd.lang.java.rule.AbstractInefficientZeroCheck;
import net.sourceforge.pmd.lang.java.symboltable.ClassScope;
@@ -124,20 +123,14 @@ public class UseCollectionIsEmptyRule extends AbstractInefficientZeroCheck {
Node classOrEnumBody = expr.getFirstParentOfType(ASTClassOrInterfaceBody.class);
if (classOrEnumBody == null) {
classOrEnumBody = expr.getFirstParentOfType(ASTEnumBody.class);
}
}
if (classOrEnumBody == null) {
classOrEnumBody = expr.getFirstParentOfType(ASTRecordDeclaration.class);
List<ASTVariableDeclaratorId> descendantsOfType = classOrEnumBody.findDescendantsOfType(ASTVariableDeclaratorId.class);
for (ASTVariableDeclaratorId variableDeclaratorId : descendantsOfType) {
if (variableDeclaratorId.getName().equals(varName)) {
return variableDeclaratorId.getTypeNode().getTypeDefinition();
}
}
}
List<ASTVariableDeclarator> varDeclarators = classOrEnumBody.findDescendantsOfType(ASTVariableDeclarator.class);
for (ASTVariableDeclarator varDeclarator : varDeclarators) {
if (varDeclarator.getName().equals(varName)) {
return varDeclarator.getVariableId().getTypeNode().getTypeDefinition();
List<ASTVariableDeclaratorId> varDeclaratorIds = classOrEnumBody.findDescendantsOfType(ASTVariableDeclaratorId.class);
for (ASTVariableDeclaratorId variableDeclaratorId : varDeclaratorIds) {
if (variableDeclaratorId.getName().equals(varName)) {
return variableDeclaratorId.getTypeNode().getTypeDefinition();
}
}
return null;