Module jdk.compiler

Interface TreeVisitor<R,P>

类型参数:
R - 此访问者方法的返回类型。对于不需要返回结果的访问者,请使用Void
P - 此访问者方法的附加参数的类型。对于不需要附加参数的访问者,请使用Void
所有已知的实现类:
SimpleTreeVisitor, TreePathScanner, TreeScanner

public interface TreeVisitor<R,P>
以访问者设计模式的方式访问树。实现此接口的类用于在编译时未知树的种类时操作树。当将访问者传递给树的accept方法时,将调用最适用于该树的visitXyz方法。

实现此接口的类可能会或可能不会在附加参数pnull时抛出NullPointerException;有关详细信息,请参阅实现类的文档。

警告: 可能会向此接口添加方法以适应将来版本的Java编程语言中添加的新的、当前未知的语言结构。因此,直接实现此接口的访问者类可能与平台的将来版本不兼容。

自版本:
1.6
  • Method Details

    • visitAnnotatedType

      R visitAnnotatedType(AnnotatedTypeTree node, P p)
      访问AnnotatedTypeTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitAnnotation

      R visitAnnotation(AnnotationTree node, P p)
      访问AnnotatedTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitMethodInvocation

      R visitMethodInvocation(MethodInvocationTree node, P p)
      访问MethodInvocationTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitAssert

      R visitAssert(AssertTree node, P p)
      访问AssertTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitAssignment

      R visitAssignment(AssignmentTree node, P p)
      访问AssignmentTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitCompoundAssignment

      R visitCompoundAssignment(CompoundAssignmentTree node, P p)
      访问CompoundAssignmentTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitBinary

      R visitBinary(BinaryTree node, P p)
      访问BinaryTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitBlock

      R visitBlock(BlockTree node, P p)
      访问BlockTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitBreak

      R visitBreak(BreakTree node, P p)
      访问BreakTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitCase

      R visitCase(CaseTree node, P p)
      访问CaseTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitCatch

      R visitCatch(CatchTree node, P p)
      访问CatchTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitClass

      R visitClass(ClassTree node, P p)
      访问ClassTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitConditionalExpression

      R visitConditionalExpression(ConditionalExpressionTree node, P p)
      访问ConditionalExpressionTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitContinue

      R visitContinue(ContinueTree node, P p)
      访问ContinueTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitDoWhileLoop

      R visitDoWhileLoop(DoWhileLoopTree node, P p)
      访问DoWhileTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitErroneous

      R visitErroneous(ErroneousTree node, P p)
      访问ErroneousTree节点。
      参数:
      node - 正在访问的节点
      p - 参数值
      返回:
      一个结果值
    • visitExpressionStatement

      R visitExpressionStatement(ExpressionStatementTree node, P p)
      访问ExpressionStatementTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitEnhancedForLoop

      R visitEnhancedForLoop(EnhancedForLoopTree node, P p)
      访问一个EnhancedForLoopTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitForLoop

      R visitForLoop(ForLoopTree node, P p)
      访问一个ForLoopTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitIdentifier

      R visitIdentifier(IdentifierTree node, P p)
      访问一个IdentifierTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitIf

      R visitIf(IfTree node, P p)
      访问一个IfTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitImport

      R visitImport(ImportTree node, P p)
      访问一个ImportTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitArrayAccess

      R visitArrayAccess(ArrayAccessTree node, P p)
      访问一个ArrayAccessTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitLabeledStatement

      R visitLabeledStatement(LabeledStatementTree node, P p)
      访问一个LabeledStatementTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitLiteral

      R visitLiteral(LiteralTree node, P p)
      访问一个LiteralTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitStringTemplate

      R visitStringTemplate(StringTemplateTreePREVIEW node, P p)
      visitStringTemplate是Java平台的一个反射预览API。
      预览功能可能会在将来的版本中被移除,或升级为Java平台的永久功能。
      访问一个StringTemplateTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitAnyPattern

      R visitAnyPattern(AnyPatternTreePREVIEW node, P p)
      visitAnyPattern是Java平台的一个预览API。
      仅当启用预览功能时,程序才能使用visitAnyPattern
      预览功能可能会在将来的版本中被移除,或升级为Java平台的永久功能。
      访问一个AnyPatternTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
      自:
      21
    • visitBindingPattern

      R visitBindingPattern(BindingPatternTree node, P p)
      访问一个BindingPatternTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
      自:
      16
    • visitDefaultCaseLabel

      R visitDefaultCaseLabel(DefaultCaseLabelTree node, P p)
      访问一个DefaultCaseLabelTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
      自:
      21
    • visitConstantCaseLabel

      R visitConstantCaseLabel(ConstantCaseLabelTree node, P p)
      访问一个ConstantCaseLabelTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
      自:
      21
    • visitPatternCaseLabel

      R visitPatternCaseLabel(PatternCaseLabelTree node, P p)
      访问一个PatternCaseLabelTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
      自:
      21
    • visitDeconstructionPattern

      R visitDeconstructionPattern(DeconstructionPatternTree node, P p)
      访问一个DeconstructionPatternTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
      自:
      21
    • visitMethod

      R visitMethod(MethodTree node, P p)
      访问一个MethodTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitModifiers

      R visitModifiers(ModifiersTree node, P p)
      访问一个ModifiersTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitNewArray

      R visitNewArray(NewArrayTree node, P p)
      访问一个NewArrayTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitNewClass

      R visitNewClass(NewClassTree node, P p)
      访问一个NewClassTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitLambdaExpression

      R visitLambdaExpression(LambdaExpressionTree node, P p)
      访问一个LambdaExpressionTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitPackage

      R visitPackage(PackageTree node, P p)
      访问一个PackageTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitParenthesized

      R visitParenthesized(ParenthesizedTree node, P p)
      访问一个ParenthesizedTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitReturn

      R visitReturn(ReturnTree node, P p)
      访问一个ReturnTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitMemberSelect

      R visitMemberSelect(MemberSelectTree node, P p)
      访问一个MemberSelectTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitMemberReference

      R visitMemberReference(MemberReferenceTree node, P p)
      访问一个MemberReferenceTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitEmptyStatement

      R visitEmptyStatement(EmptyStatementTree node, P p)
      访问一个EmptyStatementTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitSwitch

      R visitSwitch(SwitchTree node, P p)
      访问一个SwitchTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitSwitchExpression

      R visitSwitchExpression(SwitchExpressionTree node, P p)
      访问一个SwitchExpressionTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
      自:
      12
    • visitSynchronized

      R visitSynchronized(SynchronizedTree node, P p)
      访问一个SynchronizedTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitThrow

      R visitThrow(ThrowTree node, P p)
      访问一个ThrowTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitCompilationUnit

      R visitCompilationUnit(CompilationUnitTree node, P p)
      访问一个CompilationUnitTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitTry

      R visitTry(TryTree node, P p)
      访问一个TryTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitParameterizedType

      R visitParameterizedType(ParameterizedTypeTree node, P p)
      访问一个ParameterizedTypeTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitUnionType

      R visitUnionType(UnionTypeTree node, P p)
      访问一个UnionTypeTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
    • visitIntersectionType

      R visitIntersectionType(IntersectionTypeTree node, P p)
      Visits an IntersectionTypeTree node.
      Parameters:
      node - the node being visited
      p - a parameter value
      Returns:
      a result value
    • visitArrayType

      R visitArrayType(ArrayTypeTree node, P p)
      Visits an ArrayTypeTree node.
      Parameters:
      node - the node being visited
      p - a parameter value
      Returns:
      a result value
    • visitTypeCast

      R visitTypeCast(TypeCastTree node, P p)
      Visits a TypeCastTree node.
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitPrimitiveType

      R visitPrimitiveType(PrimitiveTypeTree node, P p)
      访问一个PrimitiveTypeTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitTypeParameter

      R visitTypeParameter(TypeParameterTree node, P p)
      访问一个TypeParameterTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitInstanceOf

      R visitInstanceOf(InstanceOfTree node, P p)
      访问一个InstanceOfTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitUnary

      R visitUnary(UnaryTree node, P p)
      访问一个UnaryTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitVariable

      R visitVariable(VariableTree node, P p)
      访问一个VariableTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitWhileLoop

      R visitWhileLoop(WhileLoopTree node, P p)
      访问一个WhileLoopTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitWildcard

      R visitWildcard(WildcardTree node, P p)
      访问一个WildcardTypeTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitModule

      R visitModule(ModuleTree node, P p)
      访问一个ModuleTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitExports

      R visitExports(ExportsTree node, P p)
      访问一个ExportsTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitOpens

      R visitOpens(OpensTree node, P p)
      访问一个OpensTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitProvides

      R visitProvides(ProvidesTree node, P p)
      访问一个ProvidesTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitRequires

      R visitRequires(RequiresTree node, P p)
      访问一个RequiresTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitUses

      R visitUses(UsesTree node, P p)
      访问一个UsesTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitOther

      R visitOther(Tree node, P p)
      访问一个未知类型的Tree节点。如果语言发展并添加了新类型的节点到Tree层次结构中,可能会出现这种情况。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
    • visitYield

      R visitYield(YieldTree node, P p)
      访问一个YieldTree节点。
      参数:
      node - 正在访问的节点
      p - 一个参数值
      返回:
      一个结果值
      自从:
      13