Class JavaIsoVisitor<P>

java.lang.Object
org.openrewrite.TreeVisitor<J,P>
org.openrewrite.java.JavaVisitor<P>
org.openrewrite.java.JavaIsoVisitor<P>
Direct Known Subclasses:
AddImport, AutodetectGeneralFormatStyle, AutoFormatVisitor, BlankLinesVisitor, ChangeFieldName, ChangeFieldType, ChangeLiteral, ChangeMethodAccessLevelVisitor, ControlFlowBasicBlockVisitor, CovariantEqualsVisitor, DeclaresMethod, DefaultComesLastVisitor, DeimplementInterface, DeleteStatement, EmptyBlockVisitor, EqualsAvoidsNullVisitor, ExplicitInitializationVisitor, FallThroughVisitor, FinalClassVisitor, FinalizeLocalVariablesVisitor, FindLocalFlowPaths, FormatFirstClassPrefix, GenerateGetterAndSetterVisitor, HasTypeOnClasspathSourceSet, HiddenFieldVisitor, HideUtilityClassConstructorVisitor, ImplementInterface, InJavaSourceSet, MaybeUsesImport, MinimumViableSpacingVisitor, MultipleVariableDeclarationsVisitor, NormalizeFormatVisitor, NormalizeLineBreaksVisitor, NormalizeTabsOrSpacesVisitor, RandomizeIdVisitor, RemoveAnnotationVisitor, RemoveImport, RemoveTrailingWhitespaceVisitor, RenameVariable, SpacesVisitor, TabsAndIndentsVisitor, UsesAllMethods, UsesField, UsesJavaVersion, UsesMethod, UsesType, WrappingAndBracesVisitor

public class JavaIsoVisitor<P> extends JavaVisitor<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.