Package org.openrewrite.staticanalysis
Class EqualsAvoidsNullVisitor<P>
java.lang.Object
org.openrewrite.TreeVisitor<org.openrewrite.java.tree.J,P>
org.openrewrite.java.JavaVisitor<P>
org.openrewrite.staticanalysis.EqualsAvoidsNullVisitor<P>
- Type Parameters:
P- The type of the parent context used for visiting the AST.
public class EqualsAvoidsNullVisitor<P>
extends org.openrewrite.java.JavaVisitor<P>
A visitor that identifies and addresses potential issues related to
the use of
equals methods in Java, particularly to avoid
null pointer exceptions when comparing strings.
This visitor looks for method invocations of equals,
equalsIgnoreCase, compareTo, and contentEquals,
and performs optimizations to ensure null checks are correctly applied.
For more details, refer to the PMD best practices: Literals First in Comparisons
-
Field Summary
Fields inherited from class org.openrewrite.java.JavaVisitor
javadocVisitor -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.openrewrite.java.tree.JvisitMethodInvocation(org.openrewrite.java.tree.J.MethodInvocation method, P p) Methods inherited from class org.openrewrite.java.JavaVisitor
autoFormat, autoFormat, autoFormat, getJavadocVisitor, getLanguage, isAcceptable, isInSameNameScope, isInSameNameScope, maybeAddImport, maybeAddImport, maybeAddImport, maybeAddImport, maybeAddImport, maybeAddImport, maybeAutoFormat, maybeAutoFormat, maybeAutoFormat, maybeRemoveImport, maybeRemoveImport, service, visitAnnotatedType, visitAnnotation, visitArrayAccess, visitArrayDimension, visitArrayType, visitAssert, visitAssignment, visitAssignmentOperation, visitBinary, visitBlock, visitBreak, visitCase, visitCatch, visitClassDeclaration, visitCompilationUnit, visitContainer, visitContinue, visitControlParentheses, visitDeconstructionPattern, visitDoWhileLoop, visitElse, visitEmpty, visitEnumValue, visitEnumValueSet, visitErroneous, visitExpression, visitFieldAccess, visitForControl, visitForEachControl, visitForEachLoop, visitForLoop, visitIdentifier, visitIf, visitImport, visitInstanceOf, visitIntersectionType, visitLabel, visitLambda, visitLeftPadded, visitLiteral, visitMemberReference, visitMethodDeclaration, visitModifier, visitMultiCatch, visitNewArray, visitNewClass, visitNullableType, visitPackage, visitParameterizedType, visitParentheses, visitParenthesizedTypeTree, visitPrimitive, visitReturn, visitRightPadded, visitSpace, visitStatement, visitSwitch, visitSwitchExpression, visitSynchronized, visitTernary, visitThrow, visitTry, visitTryResource, visitType, visitTypeCast, visitTypeName, visitTypeParameter, visitUnary, visitUnknown, visitUnknownSource, visitVariable, visitVariableDeclarations, visitWhileLoop, visitWildcard, visitYieldMethods inherited from class org.openrewrite.TreeVisitor
adapt, collect, collect, defaultValue, doAfterVisit, getAfterVisit, getCursor, isAdaptableTo, noop, postVisit, preVisit, reduce, reduce, reduce, setCursor, stopAfterPreVisit, updateCursor, visit, visit, visit, visitAndCast, visitAndCast, visitMarker, visitMarkers, visitNonNull, visitNonNull, visitorTreeType
-
Constructor Details
-
EqualsAvoidsNullVisitor
public EqualsAvoidsNullVisitor()
-
-
Method Details