APIdia Launch Partner
Top Description Constructors Methods
com.sun.tools.javac.tree

public Class TreeScanner

extends Visitor
Class Inheritance
Known Direct Subclasses
com.sun.tools.javac.code.TypeAnnotations.TypeAnnotationPositions, com.sun.tools.javac.comp.Analyzer.StatementScanner, com.sun.tools.javac.comp.Annotate.TypeAnnotate, com.sun.tools.javac.comp.Annotate.AnnotationTypeVisitor, com.sun.tools.javac.comp.Attr.LocalInitScanner, com.sun.tools.javac.comp.Attr.TypeAnnotationsValidator, com.sun.tools.javac.comp.Attr.PostAttrAnalyzer, com.sun.tools.javac.comp.CaptureScanner, com.sun.tools.javac.comp.Check.CycleChecker, com.sun.tools.javac.comp.Check.SuperThisChecker, com.sun.tools.javac.comp.DeferredAttr.TypeDeclVisitor, com.sun.tools.javac.comp.DeferredAttr.DeferredAttrDiagHandler.PosScanner, com.sun.tools.javac.comp.DeferredAttr.DeferredAttrNode.StructuralStuckChecker, com.sun.tools.javac.comp.DeferredAttr.DeferredAttrNode.LambdaBodyStructChecker, com.sun.tools.javac.comp.DeferredAttr.FilterScanner, com.sun.tools.javac.comp.Enter.UnenterScanner, com.sun.tools.javac.comp.Flow.BaseAnalyzer, com.sun.tools.javac.comp.Lower.ClassMap, com.sun.tools.javac.comp.Lower.AssignopDependencyScanner, com.sun.tools.javac.comp.MatchBindingsComputer, com.sun.tools.javac.comp.ThisEscapeAnalyzer, com.sun.tools.javac.comp.TransPatterns.ReplaceVar, com.sun.tools.javac.comp.TreeDiffer, com.sun.tools.javac.comp.TreeHasher, com.sun.tools.javac.tree.TreeInfo.ConstructorCallFinder, com.sun.tools.javac.tree.TreeInfo.DeclScanner, com.sun.tools.javac.tree.TreeInfo.TypeAnnotationFinder
Imports
com.sun.tools.javac.util.*, com.sun.tools.javac.tree.JCTree.*, jdk.internal.javac.PreviewFeature

A subclass of Tree.Visitor, this class defines a general tree scanner pattern. Translation proceeds recursively in left-to-right order down a tree. There is one visitor method in this class for every possible kind of tree node. To obtain a specific scanner, it suffices to override those visitor methods which do some interesting work. The scanner class itself takes care of all navigational aspects.

This is NOT part of any supported API. If you write code that depends on this, you do so at your own risk. This code and its internal interfaces are subject to change or deletion without notice.

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public void
scan(JCTree tree)

Visitor method: Scan a single node.

public void
scan(List<? extends JCTree> trees)

Visitor method: scan a list of nodes.

public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void

Constructor Detail

TreeScannerback to summary
public TreeScanner()

Method Detail

scanback to summary
public void scan(JCTree tree)

Visitor method: Scan a single node.

scanback to summary
public void scan(List<? extends JCTree> trees)

Visitor method: scan a list of nodes.

visitAnnotatedTypeback to summary
public void visitAnnotatedType(JCTree.JCAnnotatedType tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitAnnotatedType.

visitAnnotationback to summary
public void visitAnnotation(JCTree.JCAnnotation tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitAnnotation.

visitAnyPatternback to summary
public void visitAnyPattern(JCTree.JCAnyPattern that)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitAnyPattern.

Annotations
@Override
visitApplyback to summary
public void visitApply(JCTree.JCMethodInvocation tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitApply.

visitAssertback to summary
public void visitAssert(JCTree.JCAssert tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitAssert.

visitAssignback to summary
public void visitAssign(JCTree.JCAssign tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitAssign.

visitAssignopback to summary
public void visitAssignop(JCTree.JCAssignOp tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitAssignop.

visitBinaryback to summary
public void visitBinary(JCTree.JCBinary tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitBinary.

visitBindingPatternback to summary
public void visitBindingPattern(JCTree.JCBindingPattern tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitBindingPattern.

visitBlockback to summary
public void visitBlock(JCTree.JCBlock tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitBlock.

visitBreakback to summary
public void visitBreak(JCTree.JCBreak tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitBreak.

visitCaseback to summary
public void visitCase(JCTree.JCCase tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitCase.

visitCatchback to summary
public void visitCatch(JCTree.JCCatch tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitCatch.

visitClassDefback to summary
public void visitClassDef(JCTree.JCClassDecl tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitClassDef.

visitConditionalback to summary
public void visitConditional(JCTree.JCConditional tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitConditional.

visitConstantCaseLabelback to summary
public void visitConstantCaseLabel(JCTree.JCConstantCaseLabel tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitConstantCaseLabel.

Annotations
@Override
visitContinueback to summary
public void visitContinue(JCTree.JCContinue tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitContinue.

visitDefaultCaseLabelback to summary
public void visitDefaultCaseLabel(JCTree.JCDefaultCaseLabel tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitDefaultCaseLabel.

Annotations
@Override
visitDoLoopback to summary
public void visitDoLoop(JCTree.JCDoWhileLoop tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitDoLoop.

visitErroneousback to summary
public void visitErroneous(JCTree.JCErroneous tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitErroneous.

visitExecback to summary
public void visitExec(JCTree.JCExpressionStatement tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitExec.

visitExportsback to summary
public void visitExports(JCTree.JCExports tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitExports.

Annotations
@Override
visitForeachLoopback to summary
public void visitForeachLoop(JCTree.JCEnhancedForLoop tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitForeachLoop.

visitForLoopback to summary
public void visitForLoop(JCTree.JCForLoop tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitForLoop.

visitIdentback to summary
public void visitIdent(JCTree.JCIdent tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitIdent.

visitIfback to summary
public void visitIf(JCTree.JCIf tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitIf.

visitImportback to summary
public void visitImport(JCTree.JCImport tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitImport.

visitIndexedback to summary
public void visitIndexed(JCTree.JCArrayAccess tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitIndexed.

visitLabelledback to summary
public void visitLabelled(JCTree.JCLabeledStatement tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitLabelled.

visitLambdaback to summary
public void visitLambda(JCTree.JCLambda tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitLambda.

visitLetExprback to summary
public void visitLetExpr(JCTree.LetExpr tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitLetExpr.

visitLiteralback to summary
public void visitLiteral(JCTree.JCLiteral tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitLiteral.

visitMethodDefback to summary
public void visitMethodDef(JCTree.JCMethodDecl tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitMethodDef.

visitModifiersback to summary
public void visitModifiers(JCTree.JCModifiers tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitModifiers.

visitModuleDefback to summary
public void visitModuleDef(JCTree.JCModuleDecl tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitModuleDef.

Annotations
@Override
visitModuleImportback to summary
public void visitModuleImport(JCTree.JCModuleImport tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitModuleImport.

Annotations
@Override
visitNewArrayback to summary
public void visitNewArray(JCTree.JCNewArray tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitNewArray.

visitNewClassback to summary
public void visitNewClass(JCTree.JCNewClass tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitNewClass.

visitOpensback to summary
public void visitOpens(JCTree.JCOpens tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitOpens.

Annotations
@Override
visitPackageDefback to summary
public void visitPackageDef(JCTree.JCPackageDecl tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitPackageDef.

visitParensback to summary
public void visitParens(JCTree.JCParens tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitParens.

visitPatternCaseLabelback to summary
public void visitPatternCaseLabel(JCTree.JCPatternCaseLabel tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitPatternCaseLabel.

Annotations
@Override
visitProvidesback to summary
public void visitProvides(JCTree.JCProvides tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitProvides.

Annotations
@Override
visitRecordPatternback to summary
public void visitRecordPattern(JCTree.JCRecordPattern that)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitRecordPattern.

Annotations
@Override
visitReferenceback to summary
public void visitReference(JCTree.JCMemberReference tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitReference.

visitRequiresback to summary
public void visitRequires(JCTree.JCRequires tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitRequires.

Annotations
@Override
visitReturnback to summary
public void visitReturn(JCTree.JCReturn tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitReturn.

visitSelectback to summary
public void visitSelect(JCTree.JCFieldAccess tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitSelect.

visitSkipback to summary
public void visitSkip(JCTree.JCSkip tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitSkip.

visitSwitchback to summary
public void visitSwitch(JCTree.JCSwitch tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitSwitch.

visitSwitchExpressionback to summary
public void visitSwitchExpression(JCTree.JCSwitchExpression tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitSwitchExpression.

visitSynchronizedback to summary
public void visitSynchronized(JCTree.JCSynchronized tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitSynchronized.

visitThrowback to summary
public void visitThrow(JCTree.JCThrow tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitThrow.

visitTopLevelback to summary
public void visitTopLevel(JCTree.JCCompilationUnit tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitTopLevel.

visitTreeback to summary
public void visitTree(JCTree tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitTree.

visitTryback to summary
public void visitTry(JCTree.JCTry tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitTry.

visitTypeApplyback to summary
public void visitTypeApply(JCTree.JCTypeApply tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitTypeApply.

visitTypeArrayback to summary
public void visitTypeArray(JCTree.JCArrayTypeTree tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitTypeArray.

visitTypeBoundKindback to summary
public void visitTypeBoundKind(JCTree.TypeBoundKind that)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitTypeBoundKind.

Annotations
@Override
visitTypeCastback to summary
public void visitTypeCast(JCTree.JCTypeCast tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitTypeCast.

visitTypeIdentback to summary
public void visitTypeIdent(JCTree.JCPrimitiveTypeTree tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitTypeIdent.

visitTypeIntersectionback to summary
public void visitTypeIntersection(JCTree.JCTypeIntersection tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitTypeIntersection.

visitTypeParameterback to summary
public void visitTypeParameter(JCTree.JCTypeParameter tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitTypeParameter.

visitTypeTestback to summary
public void visitTypeTest(JCTree.JCInstanceOf tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitTypeTest.

visitTypeUnionback to summary
public void visitTypeUnion(JCTree.JCTypeUnion tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitTypeUnion.

visitUnaryback to summary
public void visitUnary(JCTree.JCUnary tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitUnary.

visitUsesback to summary
public void visitUses(JCTree.JCUses tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitUses.

Annotations
@Override
visitVarDefback to summary
public void visitVarDef(JCTree.JCVariableDecl tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitVarDef.

visitVarTypeback to summary
public void visitVarType(JCTree.JCVarType tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitVarType.

visitWhileLoopback to summary
public void visitWhileLoop(JCTree.JCWhileLoop tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitWhileLoop.

visitWildcardback to summary
public void visitWildcard(JCTree.JCWildcard tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitWildcard.

Annotations
@Override
visitYieldback to summary
public void visitYield(JCTree.JCYield tree)

Overrides com.sun.tools.javac.tree.JCTree.Visitor.visitYield.