Interface CtVisitor

All Known Implementing Classes:
AstParentConsistencyChecker, CloneBuilder, CloneVisitor, CtAbstractBiScanner, CtAbstractVisitor, CtBFSIterator, CtBiScannerDefault, CtDequeScanner, CtInheritanceScanner, CtIterator, CtScanner, DefaultJavaPrettyPrinter, EarlyTerminatingScanner, EqualsChecker, EqualsVisitor, HashcodeVisitor, ImportCleaner.ImportCleanerScanner, ImportScannerImpl, InlinePartialEvaluator, LexicalScopeScanner, MatchingScanner, MethodInvocationSearch, ModelConsistencyChecker, ParentExiter, ProcessingVisitor, ReplacementVisitor, SignaturePrinter, SniperJavaPrettyPrinter, SpoonifierVisitor, SpoonTreeBuilder, TypeReferenceScanner, VariableReferenceFunction.Visitor, VariableScopeFunction.Visitor, VisitorPartialEvaluator

public interface CtVisitor
This interface defines the visitor for the Spoon metamodel, as defined in spoon.reflect.declaration, spoon.reflect.code, and spoon.reflect.reference. It declares a visit method for each element of the AST.
  • Method Details

    • visitCtAnnotation

      <A extends Annotation> void visitCtAnnotation(CtAnnotation<A> annotation)
      Visits an annotation.
    • visitCtCodeSnippetExpression

      <T> void visitCtCodeSnippetExpression(CtCodeSnippetExpression<T> expression)
      Visits a code snippet expression.
    • visitCtCodeSnippetStatement

      void visitCtCodeSnippetStatement(CtCodeSnippetStatement statement)
      Visits a code snippet statement.
    • visitCtAnnotationType

      <A extends Annotation> void visitCtAnnotationType(CtAnnotationType<A> annotationType)
      Visits an annotation type declaration.
    • visitCtAnonymousExecutable

      void visitCtAnonymousExecutable(CtAnonymousExecutable anonymousExec)
      Visits an anonymous executable.
    • visitCtArrayRead

      <T> void visitCtArrayRead(CtArrayRead<T> arrayRead)
      Visits an array read access.
    • visitCtArrayWrite

      <T> void visitCtArrayWrite(CtArrayWrite<T> arrayWrite)
      Visits an array write access.
    • visitCtArrayTypeReference

      <T> void visitCtArrayTypeReference(CtArrayTypeReference<T> reference)
      Visits a reference to an array type.
    • visitCtAssert

      <T> void visitCtAssert(CtAssert<T> asserted)
      Visits an assert.
    • visitCtAssignment

      <T,​ A extends T> void visitCtAssignment(CtAssignment<T,​A> assignement)
      Visits an assignment.
    • visitCtBinaryOperator

      <T> void visitCtBinaryOperator(CtBinaryOperator<T> operator)
      Visits a binary operator.
    • visitCtBlock

      <R> void visitCtBlock(CtBlock<R> block)
      Visits a block of code.
    • visitCtBreak

      void visitCtBreak(CtBreak breakStatement)
      Visits a break statement.
    • visitCtCase

      <S> void visitCtCase(CtCase<S> caseStatement)
      Visits a case clause.
    • visitCtCatch

      void visitCtCatch(CtCatch catchBlock)
      Visits a catch clause.
    • visitCtClass

      <T> void visitCtClass(CtClass<T> ctClass)
      Visits a class declaration.
    • visitCtTypeParameter

      void visitCtTypeParameter(CtTypeParameter typeParameter)
      Visits a type parameter declaration.
    • visitCtConditional

      <T> void visitCtConditional(CtConditional<T> conditional)
      Visits a conditional expression
    • visitCtConstructor

      <T> void visitCtConstructor(CtConstructor<T> c)
      Visits a constructor declaration.
    • visitCtContinue

      void visitCtContinue(CtContinue continueStatement)
      Visits a continue statement.
    • visitCtDo

      void visitCtDo(CtDo doLoop)
      Visits a do loop.
    • visitCtEnum

      <T extends Enum<?>> void visitCtEnum(CtEnum<T> ctEnum)
      Visits an enumeration declaration.
    • visitCtExecutableReference

      <T> void visitCtExecutableReference(CtExecutableReference<T> reference)
      Visits a reference to an executable.
    • visitCtField

      <T> void visitCtField(CtField<T> f)
      Visits a field declaration.
    • visitCtEnumValue

      <T> void visitCtEnumValue(CtEnumValue<T> enumValue)
      Visits an enum value declaration.
    • visitCtThisAccess

      <T> void visitCtThisAccess(CtThisAccess<T> thisAccess)
      Visits a this access.
    • visitCtFieldReference

      <T> void visitCtFieldReference(CtFieldReference<T> reference)
      Visits a reference to a field.
    • visitCtUnboundVariableReference

      <T> void visitCtUnboundVariableReference(CtUnboundVariableReference<T> reference)
      Visits a reference to an unbound field
    • visitCtFor

      void visitCtFor(CtFor forLoop)
      Visits a for loop.
    • visitCtForEach

      void visitCtForEach(CtForEach foreach)
      Visits an enhanced for loop.
    • visitCtIf

      void visitCtIf(CtIf ifElement)
      Visits an if statement.
    • visitCtInterface

      <T> void visitCtInterface(CtInterface<T> intrface)
      Visits an interface declaration.
    • visitCtInvocation

      <T> void visitCtInvocation(CtInvocation<T> invocation)
      Visits an executable invocation.
    • visitCtLiteral

      <T> void visitCtLiteral(CtLiteral<T> literal)
      Visits a literal expression.
    • visitCtTextBlock

      void visitCtTextBlock(CtTextBlock ctTextBlock)
      Visits a literal TextBlock string.
    • visitCtLocalVariable

      <T> void visitCtLocalVariable(CtLocalVariable<T> localVariable)
      Visits a local variable declaration.
    • visitCtLocalVariableReference

      <T> void visitCtLocalVariableReference(CtLocalVariableReference<T> reference)
      Visits a reference to a local variable.
    • visitCtCatchVariable

      <T> void visitCtCatchVariable(CtCatchVariable<T> catchVariable)
      Visits a catch variable declaration.
    • visitCtCatchVariableReference

      <T> void visitCtCatchVariableReference(CtCatchVariableReference<T> reference)
      Visits a reference to a catch variable.
    • visitCtMethod

      <T> void visitCtMethod(CtMethod<T> m)
      Visits a method declaration.
    • visitCtAnnotationMethod

      <T> void visitCtAnnotationMethod(CtAnnotationMethod<T> annotationMethod)
      Visits an annotation method declaration.
    • visitCtNewArray

      <T> void visitCtNewArray(CtNewArray<T> newArray)
      Visits an array construction.
    • visitCtConstructorCall

      <T> void visitCtConstructorCall(CtConstructorCall<T> ctConstructorCall)
      Visits a call to a constructor.
    • visitCtNewClass

      <T> void visitCtNewClass(CtNewClass<T> newClass)
      Visits an anonymous class construction.
    • visitCtLambda

      <T> void visitCtLambda(CtLambda<T> lambda)
      Visits an anonymous method construction.
    • visitCtExecutableReferenceExpression

      <T,​ E extends CtExpression<?>> void visitCtExecutableReferenceExpression(CtExecutableReferenceExpression<T,​E> expression)
      Visits a reference to an executable.
    • visitCtOperatorAssignment

      <T,​ A extends T> void visitCtOperatorAssignment(CtOperatorAssignment<T,​A> assignment)
      Visits an operator assignment.
    • visitCtPackage

      void visitCtPackage(CtPackage ctPackage)
      Visits a package declaration.
    • visitCtPackageReference

      void visitCtPackageReference(CtPackageReference reference)
      Visits a reference to a package.
    • visitCtParameter

      <T> void visitCtParameter(CtParameter<T> parameter)
      Visits a parameter declaration.
    • visitCtParameterReference

      <T> void visitCtParameterReference(CtParameterReference<T> reference)
      Visits a reference to a parameter.
    • visitCtReturn

      <R> void visitCtReturn(CtReturn<R> returnStatement)
      Visits a return statement.
    • visitCtStatementList

      <R> void visitCtStatementList(CtStatementList statements)
      Visits a statement list.
    • visitCtSwitch

      <S> void visitCtSwitch(CtSwitch<S> switchStatement)
      Visits a switch statement.
    • visitCtSwitchExpression

      <T,​ S> void visitCtSwitchExpression(CtSwitchExpression<T,​S> switchExpression)
      Visits a switch expression.
    • visitCtSynchronized

      void visitCtSynchronized(CtSynchronized synchro)
      Visits a synchronized modifier.
    • visitCtThrow

      void visitCtThrow(CtThrow throwStatement)
      Visits a throw statement.
    • visitCtTry

      void visitCtTry(CtTry tryBlock)
      Visits a try statement.
    • visitCtTryWithResource

      void visitCtTryWithResource(CtTryWithResource tryWithResource)
      Visits a try with resource statement.
    • visitCtTypeParameterReference

      void visitCtTypeParameterReference(CtTypeParameterReference ref)
      Visits a reference to a type parameter.
    • visitCtWildcardReference

      void visitCtWildcardReference(CtWildcardReference wildcardReference)
      Visits a reference to a wildcard.
    • visitCtIntersectionTypeReference

      <T> void visitCtIntersectionTypeReference(CtIntersectionTypeReference<T> reference)
      Visits an intersection type.
    • visitCtTypeReference

      <T> void visitCtTypeReference(CtTypeReference<T> reference)
      Visits a reference to a type.
    • visitCtTypeAccess

      <T> void visitCtTypeAccess(CtTypeAccess<T> typeAccess)
      Visits a type access.
    • visitCtUnaryOperator

      <T> void visitCtUnaryOperator(CtUnaryOperator<T> operator)
      Visits a unary operator.
    • visitCtVariableRead

      <T> void visitCtVariableRead(CtVariableRead<T> variableRead)
      Visits a variable read access.
    • visitCtVariableWrite

      <T> void visitCtVariableWrite(CtVariableWrite<T> variableWrite)
      Visits a variable write access.
    • visitCtWhile

      void visitCtWhile(CtWhile whileLoop)
      Visits a while loop.
    • visitCtAnnotationFieldAccess

      <T> void visitCtAnnotationFieldAccess(CtAnnotationFieldAccess<T> annotationFieldAccess)
      Visits a field of an annotation.
    • visitCtFieldRead

      <T> void visitCtFieldRead(CtFieldRead<T> fieldRead)
      Visits a field read access.
    • visitCtFieldWrite

      <T> void visitCtFieldWrite(CtFieldWrite<T> fieldWrite)
      Visits a field write access.
    • visitCtSuperAccess

      <T> void visitCtSuperAccess(CtSuperAccess<T> f)
      Visits an access to a super invocation.
    • visitCtComment

      void visitCtComment(CtComment comment)
      Visits a comment
    • visitCtJavaDoc

      void visitCtJavaDoc(CtJavaDoc comment)
      Visits a javadoc comment
    • visitCtJavaDocTag

      void visitCtJavaDocTag(CtJavaDocTag docTag)
      Visits a javadoc tag
    • visitCtImport

      void visitCtImport(CtImport ctImport)
      Visits an import declaration
    • visitCtModule

      void visitCtModule(CtModule module)
      Visits a module declaration
    • visitCtModuleReference

      void visitCtModuleReference(CtModuleReference moduleReference)
      Visits a module reference
    • visitCtPackageExport

      void visitCtPackageExport(CtPackageExport moduleExport)
      Visits a package export in a module declaration.
    • visitCtModuleRequirement

      void visitCtModuleRequirement(CtModuleRequirement moduleRequirement)
      Visits a "require" directive in a module declaration.
    • visitCtProvidedService

      void visitCtProvidedService(CtProvidedService moduleProvidedService)
      Visits a "provides" directive in a module declaration.
    • visitCtUsedService

      void visitCtUsedService(CtUsedService usedService)
      Visits a "uses" directive in a module declaration.
    • visitCtCompilationUnit

      void visitCtCompilationUnit(CtCompilationUnit compilationUnit)
      Visits a compilation unit
    • visitCtPackageDeclaration

      void visitCtPackageDeclaration(CtPackageDeclaration packageDeclaration)
      Visits a package declaration
    • visitCtTypeMemberWildcardImportReference

      void visitCtTypeMemberWildcardImportReference(CtTypeMemberWildcardImportReference wildcardReference)
      Visits an import wildcard static type member reference
    • visitCtYieldStatement

      void visitCtYieldStatement(CtYieldStatement statement)
      Visits a yield statement.
    • visitCtTypePattern

      void visitCtTypePattern(CtTypePattern pattern)
      Visits a pattern.
      Parameters:
      pattern - the pattern to visit.
    • visitCtRecord

      void visitCtRecord(CtRecord recordType)
      Visits a record.
      Parameters:
      recordType - the record to visit.
    • visitCtRecordComponent

      void visitCtRecordComponent(CtRecordComponent recordComponent)
      Visits a record component.
      Parameters:
      recordComponent - the record component to visit.