Package org.openrewrite.java
Class JavaIsoProcessor<P>
- java.lang.Object
-
- org.openrewrite.TreeProcessor<J,P>
-
- org.openrewrite.java.JavaProcessor<P>
-
- org.openrewrite.java.JavaIsoProcessor<P>
-
- All Implemented Interfaces:
JavaVisitor<J,P>
,org.openrewrite.TreeVisitor<J,P>
- Direct Known Subclasses:
AddImport
,ChangeFieldName
,ChangeFieldType
,ChangeLiteral
,DeleteStatement
,ImplementInterface
,MinimumViableSpacingProcessor
,RemoveImport
,RenameVariable
,SpacesProcessor
,WrappingAndBracesProcessor
public class JavaIsoProcessor<P> extends JavaProcessor<P>
This iso(morphic) refactoring visitor is the appropriate base class for most Java refactoring visitors. It comes with an additional constraint compared to the non-isomorphic JavaRefactorVisitor: Each visit method must return an AST element of the same type as the one being visited. For visitors that do not need the extra flexibility of JavaRefactorVisitor, this constraint makes for a more pleasant visitor authoring experience as less casting will be required.
-
-
Constructor Summary
Constructors Constructor Description JavaIsoProcessor()
-
Method Summary
-
Methods inherited from class org.openrewrite.java.JavaProcessor
call, call, call, isInSameNameScope, isInSameNameScope, maybeAddImport, maybeAddImport, maybeAddImport, maybeRemoveImport, maybeRemoveImport, visitSpace, visitTypeName
-
Methods inherited from class org.openrewrite.TreeProcessor
call, call, call, defaultValue, doAfterVisit, doAfterVisit, getAfterVisit, getCursor, rebaseCursor, setCursoringOn, visit, visit, visitEach
-
-
-
-
Method Detail
-
visitExpression
public Expression visitExpression(Expression expression, P p)
- Overrides:
visitExpression
in classJavaProcessor<P>
-
visitStatement
public Statement visitStatement(Statement statement, P p)
- Overrides:
visitStatement
in classJavaProcessor<P>
-
visitAnnotatedType
public J.AnnotatedType visitAnnotatedType(J.AnnotatedType annotatedType, P p)
- Specified by:
visitAnnotatedType
in interfaceJavaVisitor<J,P>
- Overrides:
visitAnnotatedType
in classJavaProcessor<P>
-
visitAnnotation
public J.Annotation visitAnnotation(J.Annotation annotation, P p)
- Specified by:
visitAnnotation
in interfaceJavaVisitor<J,P>
- Overrides:
visitAnnotation
in classJavaProcessor<P>
-
visitArrayAccess
public J.ArrayAccess visitArrayAccess(J.ArrayAccess arrayAccess, P p)
- Specified by:
visitArrayAccess
in interfaceJavaVisitor<J,P>
- Overrides:
visitArrayAccess
in classJavaProcessor<P>
-
visitArrayDimension
public J.ArrayDimension visitArrayDimension(J.ArrayDimension arrayDimension, P p)
- Specified by:
visitArrayDimension
in interfaceJavaVisitor<J,P>
- Overrides:
visitArrayDimension
in classJavaProcessor<P>
-
visitArrayType
public J.ArrayType visitArrayType(J.ArrayType arrayType, P p)
- Specified by:
visitArrayType
in interfaceJavaVisitor<J,P>
- Overrides:
visitArrayType
in classJavaProcessor<P>
-
visitAssert
public J.Assert visitAssert(J.Assert _assert, P p)
- Specified by:
visitAssert
in interfaceJavaVisitor<J,P>
- Overrides:
visitAssert
in classJavaProcessor<P>
-
visitAssign
public J.Assign visitAssign(J.Assign assign, P p)
- Specified by:
visitAssign
in interfaceJavaVisitor<J,P>
- Overrides:
visitAssign
in classJavaProcessor<P>
-
visitAssignOp
public J.AssignOp visitAssignOp(J.AssignOp assignOp, P p)
- Specified by:
visitAssignOp
in interfaceJavaVisitor<J,P>
- Overrides:
visitAssignOp
in classJavaProcessor<P>
-
visitBinary
public J.Binary visitBinary(J.Binary binary, P p)
- Specified by:
visitBinary
in interfaceJavaVisitor<J,P>
- Overrides:
visitBinary
in classJavaProcessor<P>
-
visitBlock
public J.Block visitBlock(J.Block block, P p)
- Specified by:
visitBlock
in interfaceJavaVisitor<J,P>
- Overrides:
visitBlock
in classJavaProcessor<P>
-
visitBreak
public J.Break visitBreak(J.Break breakStatement, P p)
- Specified by:
visitBreak
in interfaceJavaVisitor<J,P>
- Overrides:
visitBreak
in classJavaProcessor<P>
-
visitCase
public J.Case visitCase(J.Case _case, P p)
- Specified by:
visitCase
in interfaceJavaVisitor<J,P>
- Overrides:
visitCase
in classJavaProcessor<P>
-
visitCatch
public J.Try.Catch visitCatch(J.Try.Catch _catch, P p)
- Specified by:
visitCatch
in interfaceJavaVisitor<J,P>
- Overrides:
visitCatch
in classJavaProcessor<P>
-
visitClassDecl
public J.ClassDecl visitClassDecl(J.ClassDecl classDecl, P p)
- Specified by:
visitClassDecl
in interfaceJavaVisitor<J,P>
- Overrides:
visitClassDecl
in classJavaProcessor<P>
-
visitCompilationUnit
public J.CompilationUnit visitCompilationUnit(J.CompilationUnit cu, P p)
- Specified by:
visitCompilationUnit
in interfaceJavaVisitor<J,P>
- Overrides:
visitCompilationUnit
in classJavaProcessor<P>
-
visitControlParentheses
public <T extends J> J.ControlParentheses<T> visitControlParentheses(J.ControlParentheses<T> controlParens, P p)
- Specified by:
visitControlParentheses
in interfaceJavaVisitor<J,P>
- Overrides:
visitControlParentheses
in classJavaProcessor<P>
-
visitContinue
public J.Continue visitContinue(J.Continue continueStatement, P p)
- Specified by:
visitContinue
in interfaceJavaVisitor<J,P>
- Overrides:
visitContinue
in classJavaProcessor<P>
-
visitDoWhileLoop
public J.DoWhileLoop visitDoWhileLoop(J.DoWhileLoop doWhileLoop, P p)
- Specified by:
visitDoWhileLoop
in interfaceJavaVisitor<J,P>
- Overrides:
visitDoWhileLoop
in classJavaProcessor<P>
-
visitElse
public J.If.Else visitElse(J.If.Else elze, P p)
- Specified by:
visitElse
in interfaceJavaVisitor<J,P>
- Overrides:
visitElse
in classJavaProcessor<P>
-
visitEmpty
public J.Empty visitEmpty(J.Empty empty, P p)
- Specified by:
visitEmpty
in interfaceJavaVisitor<J,P>
- Overrides:
visitEmpty
in classJavaProcessor<P>
-
visitEnumValue
public J.EnumValue visitEnumValue(J.EnumValue _enum, P p)
- Specified by:
visitEnumValue
in interfaceJavaVisitor<J,P>
- Overrides:
visitEnumValue
in classJavaProcessor<P>
-
visitEnumValueSet
public J.EnumValueSet visitEnumValueSet(J.EnumValueSet enums, P p)
- Specified by:
visitEnumValueSet
in interfaceJavaVisitor<J,P>
- Overrides:
visitEnumValueSet
in classJavaProcessor<P>
-
visitFieldAccess
public J.FieldAccess visitFieldAccess(J.FieldAccess fieldAccess, P p)
- Specified by:
visitFieldAccess
in interfaceJavaVisitor<J,P>
- Overrides:
visitFieldAccess
in classJavaProcessor<P>
-
visitForEachLoop
public J.ForEachLoop visitForEachLoop(J.ForEachLoop forLoop, P p)
- Specified by:
visitForEachLoop
in interfaceJavaVisitor<J,P>
- Overrides:
visitForEachLoop
in classJavaProcessor<P>
-
visitForLoop
public J.ForLoop visitForLoop(J.ForLoop forLoop, P p)
- Specified by:
visitForLoop
in interfaceJavaVisitor<J,P>
- Overrides:
visitForLoop
in classJavaProcessor<P>
-
visitIdentifier
public J.Ident visitIdentifier(J.Ident identifier, P p)
- Specified by:
visitIdentifier
in interfaceJavaVisitor<J,P>
- Overrides:
visitIdentifier
in classJavaProcessor<P>
-
visitIf
public J.If visitIf(J.If iff, P p)
- Specified by:
visitIf
in interfaceJavaVisitor<J,P>
- Overrides:
visitIf
in classJavaProcessor<P>
-
visitImport
public J.Import visitImport(J.Import _import, P p)
- Specified by:
visitImport
in interfaceJavaVisitor<J,P>
- Overrides:
visitImport
in classJavaProcessor<P>
-
visitInstanceOf
public J.InstanceOf visitInstanceOf(J.InstanceOf instanceOf, P p)
- Specified by:
visitInstanceOf
in interfaceJavaVisitor<J,P>
- Overrides:
visitInstanceOf
in classJavaProcessor<P>
-
visitLabel
public J.Label visitLabel(J.Label label, P p)
- Specified by:
visitLabel
in interfaceJavaVisitor<J,P>
- Overrides:
visitLabel
in classJavaProcessor<P>
-
visitLambda
public J.Lambda visitLambda(J.Lambda lambda, P p)
- Specified by:
visitLambda
in interfaceJavaVisitor<J,P>
- Overrides:
visitLambda
in classJavaProcessor<P>
-
visitLiteral
public J.Literal visitLiteral(J.Literal literal, P p)
- Specified by:
visitLiteral
in interfaceJavaVisitor<J,P>
- Overrides:
visitLiteral
in classJavaProcessor<P>
-
visitMemberReference
public J.MemberReference visitMemberReference(J.MemberReference memberRef, P p)
- Specified by:
visitMemberReference
in interfaceJavaVisitor<J,P>
- Overrides:
visitMemberReference
in classJavaProcessor<P>
-
visitMethod
public J.MethodDecl visitMethod(J.MethodDecl method, P p)
- Specified by:
visitMethod
in interfaceJavaVisitor<J,P>
- Overrides:
visitMethod
in classJavaProcessor<P>
-
visitMethodInvocation
public J.MethodInvocation visitMethodInvocation(J.MethodInvocation method, P p)
- Specified by:
visitMethodInvocation
in interfaceJavaVisitor<J,P>
- Overrides:
visitMethodInvocation
in classJavaProcessor<P>
-
visitMultiCatch
public J.MultiCatch visitMultiCatch(J.MultiCatch multiCatch, P p)
- Specified by:
visitMultiCatch
in interfaceJavaVisitor<J,P>
- Overrides:
visitMultiCatch
in classJavaProcessor<P>
-
visitMultiVariable
public J.VariableDecls visitMultiVariable(J.VariableDecls multiVariable, P p)
- Specified by:
visitMultiVariable
in interfaceJavaVisitor<J,P>
- Overrides:
visitMultiVariable
in classJavaProcessor<P>
-
visitNewArray
public J.NewArray visitNewArray(J.NewArray newArray, P p)
- Specified by:
visitNewArray
in interfaceJavaVisitor<J,P>
- Overrides:
visitNewArray
in classJavaProcessor<P>
-
visitNewClass
public J.NewClass visitNewClass(J.NewClass newClass, P p)
- Specified by:
visitNewClass
in interfaceJavaVisitor<J,P>
- Overrides:
visitNewClass
in classJavaProcessor<P>
-
visitPackage
public J.Package visitPackage(J.Package pkg, P p)
- Specified by:
visitPackage
in interfaceJavaVisitor<J,P>
- Overrides:
visitPackage
in classJavaProcessor<P>
-
visitParameterizedType
public J.ParameterizedType visitParameterizedType(J.ParameterizedType type, P p)
- Specified by:
visitParameterizedType
in interfaceJavaVisitor<J,P>
- Overrides:
visitParameterizedType
in classJavaProcessor<P>
-
visitParentheses
public <T extends J> J.Parentheses<T> visitParentheses(J.Parentheses<T> parens, P p)
- Specified by:
visitParentheses
in interfaceJavaVisitor<J,P>
- Overrides:
visitParentheses
in classJavaProcessor<P>
-
visitPrimitive
public J.Primitive visitPrimitive(J.Primitive primitive, P p)
- Specified by:
visitPrimitive
in interfaceJavaVisitor<J,P>
- Overrides:
visitPrimitive
in classJavaProcessor<P>
-
visitReturn
public J.Return visitReturn(J.Return _return, P p)
- Specified by:
visitReturn
in interfaceJavaVisitor<J,P>
- Overrides:
visitReturn
in classJavaProcessor<P>
-
visitSwitch
public J.Switch visitSwitch(J.Switch _switch, P p)
- Specified by:
visitSwitch
in interfaceJavaVisitor<J,P>
- Overrides:
visitSwitch
in classJavaProcessor<P>
-
visitSynchronized
public J.Synchronized visitSynchronized(J.Synchronized _sync, P p)
- Specified by:
visitSynchronized
in interfaceJavaVisitor<J,P>
- Overrides:
visitSynchronized
in classJavaProcessor<P>
-
visitTernary
public J.Ternary visitTernary(J.Ternary ternary, P p)
- Specified by:
visitTernary
in interfaceJavaVisitor<J,P>
- Overrides:
visitTernary
in classJavaProcessor<P>
-
visitThrow
public J.Throw visitThrow(J.Throw thrown, P p)
- Specified by:
visitThrow
in interfaceJavaVisitor<J,P>
- Overrides:
visitThrow
in classJavaProcessor<P>
-
visitTry
public J.Try visitTry(J.Try _try, P p)
- Specified by:
visitTry
in interfaceJavaVisitor<J,P>
- Overrides:
visitTry
in classJavaProcessor<P>
-
visitTypeCast
public J.TypeCast visitTypeCast(J.TypeCast typeCast, P p)
- Specified by:
visitTypeCast
in interfaceJavaVisitor<J,P>
- Overrides:
visitTypeCast
in classJavaProcessor<P>
-
visitTypeParameter
public J.TypeParameter visitTypeParameter(J.TypeParameter typeParam, P p)
- Specified by:
visitTypeParameter
in interfaceJavaVisitor<J,P>
- Overrides:
visitTypeParameter
in classJavaProcessor<P>
-
visitUnary
public J.Unary visitUnary(J.Unary unary, P p)
- Specified by:
visitUnary
in interfaceJavaVisitor<J,P>
- Overrides:
visitUnary
in classJavaProcessor<P>
-
visitVariable
public J.VariableDecls.NamedVar visitVariable(J.VariableDecls.NamedVar variable, P p)
- Specified by:
visitVariable
in interfaceJavaVisitor<J,P>
- Overrides:
visitVariable
in classJavaProcessor<P>
-
visitWhileLoop
public J.WhileLoop visitWhileLoop(J.WhileLoop whileLoop, P p)
- Specified by:
visitWhileLoop
in interfaceJavaVisitor<J,P>
- Overrides:
visitWhileLoop
in classJavaProcessor<P>
-
visitWildcard
public J.Wildcard visitWildcard(J.Wildcard wildcard, P p)
- Specified by:
visitWildcard
in interfaceJavaVisitor<J,P>
- Overrides:
visitWildcard
in classJavaProcessor<P>
-
-