Spec-Zone.ru › OpenJDK 25

Интерфейс TreeVisitor<R,P>

Параметры типа:
R — тип возвращаемого значения методов этого посетителя. Используйте Void для посетителей, которым не требуется возвращать результаты.
P — тип дополнительного параметра методов этого посетителя. Используйте Void для посетителей, которым не требуется дополнительный параметр.
Все известные реализующие классы:
SimpleTreeVisitor, TreePathScanner, TreeScanner
public interface TreeVisitor<R,P>
Посетитель деревьев, реализующий шаблон проектирования «Посетитель». Классы, реализующие этот интерфейс, используются для работы с деревом, тип которого неизвестен во время компиляции. Когда посетитель передаётся методу accept дерева, вызывается метод visitXyz, наиболее подходящий для этого дерева.

Классы, реализующие этот интерфейс, могут выбрасывать или не выбрасывать NullPointerException, если дополнительный параметр p равен null; подробности см. в документации реализующего класса.

ВНИМАНИЕ: В этот интерфейс могут быть добавлены методы для поддержки новых, пока неизвестных языковых конструкций, которые появятся в будущих версиях языка программирования Java. Поэтому классы посетителей, непосредственно реализующие этот интерфейс, могут оказаться несовместимыми на уровне исходного кода с будущими версиями платформы.

Начиная с версии:
1.6

Краткое описание методов

Модификатор и тип Метод Описание
R visitAnnotatedType(AnnotatedTypeTree node, P p)
Посещает узел AnnotatedTypeTree.
R visitAnnotation(AnnotationTree node, P p)
Посещает узел AnnotatedTree.
R visitAnyPattern(AnyPatternTree node, P p)
Посещает узел AnyPatternTree.
R visitArrayAccess(ArrayAccessTree node, P p)
Посещает узел ArrayAccessTree.
R visitArrayType(ArrayTypeTree node, P p)
Посещает узел ArrayTypeTree.
R visitAssert(AssertTree node, P p)
Посещает узел AssertTree.
R visitAssignment(AssignmentTree node, P p)
Посещает узел AssignmentTree.
R visitBinary(BinaryTree node, P p)
Посещает узел BinaryTree.
R visitBindingPattern(BindingPatternTree node, P p)
Посещает узел BindingPatternTree.
R visitBlock(BlockTree node, P p)
Посещает узел BlockTree.
R visitBreak(BreakTree node, P p)
Посещает узел BreakTree.
R visitCase(CaseTree node, P p)
Посещает узел CaseTree.
R visitCatch(CatchTree node, P p)
Посещает узел CatchTree.
R visitClass(ClassTree node, P p)
Посещает узел ClassTree.
R visitCompilationUnit(CompilationUnitTree node, P p)
Посещает узел CompilationUnitTree.
R visitCompoundAssignment(CompoundAssignmentTree node, P p)
Посещает узел CompoundAssignmentTree.
R visitConditionalExpression(ConditionalExpressionTree node, P p)
Посещает узел ConditionalExpressionTree.
R visitConstantCaseLabel(ConstantCaseLabelTree node, P p)
Посещает узел ConstantCaseLabelTree.
R visitContinue(ContinueTree node, P p)
Посещает узел ContinueTree.
R visitDeconstructionPattern(DeconstructionPatternTree node, P p)
Посещает узел DeconstructionPatternTree.
R visitDefaultCaseLabel(DefaultCaseLabelTree node, P p)
Посещает узел DefaultCaseLabelTree.
R visitDoWhileLoop(DoWhileLoopTree node, P p)
Посещает узел DoWhileTree.
R visitEmptyStatement(EmptyStatementTree node, P p)
Посещает узел EmptyStatementTree.
R visitEnhancedForLoop(EnhancedForLoopTree node, P p)
Посещает узел EnhancedForLoopTree.
R visitErroneous(ErroneousTree node, P p)
Посещает узел ErroneousTree.
R visitExports(ExportsTree node, P p)
Посещает узел ExportsTree.
R visitExpressionStatement(ExpressionStatementTree node, P p)
Посещает узел ExpressionStatementTree.
R visitForLoop(ForLoopTree node, P p)
Посещает узел ForLoopTree.
R visitIdentifier(IdentifierTree node, P p)
Посещает узел IdentifierTree.
R visitIf(IfTree node, P p)
Посещает узел IfTree.
R visitImport(ImportTree node, P p)
Посещает узел ImportTree.
R visitInstanceOf(InstanceOfTree node, P p)
Посещает узел InstanceOfTree.
R visitIntersectionType(IntersectionTypeTree node, P p)
Посещает узел IntersectionTypeTree.
R visitLabeledStatement(LabeledStatementTree node, P p)
Посещает узел LabeledStatementTree.
R visitLambdaExpression(LambdaExpressionTree node, P p)
Посещает узел LambdaExpressionTree.
R visitLiteral(LiteralTree node, P p)
Посещает узел LiteralTree.
R visitMemberReference(MemberReferenceTree node, P p)
Посещает узел MemberReferenceTree.
R visitMemberSelect(MemberSelectTree node, P p)
Посещает узел MemberSelectTree.
R visitMethod(MethodTree node, P p)
Посещает узел MethodTree.
R visitMethodInvocation(MethodInvocationTree node, P p)
Посещает узел MethodInvocationTree.
R visitModifiers(ModifiersTree node, P p)
Посещает узел ModifiersTree.
R visitModule(ModuleTree node, P p)
Посещает узел ModuleTree.
R visitNewArray(NewArrayTree node, P p)
Посещает узел NewArrayTree.
R visitNewClass(NewClassTree node, P p)
Посещает узел NewClassTree.
R visitOpens(OpensTree node, P p)
Посещает узел OpensTree.
R visitOther(Tree node, P p)
Посещает узел Tree неизвестного типа.
R visitPackage(PackageTree node, P p)
Посещает узел PackageTree.
R visitParameterizedType(ParameterizedTypeTree node, P p)
Посещает узел ParameterizedTypeTree.
R visitParenthesized(ParenthesizedTree node, P p)
Посещает узел ParenthesizedTree.
R visitPatternCaseLabel(PatternCaseLabelTree node, P p)
Посещает узел PatternCaseLabelTree.
R visitPrimitiveType(PrimitiveTypeTree node, P p)
Посещает узел PrimitiveTypeTree.
R visitProvides(ProvidesTree node, P p)
Посещает узел ProvidesTree.
R visitRequires(RequiresTree node, P p)
Посещает узел RequiresTree.
R visitReturn(ReturnTree node, P p)
Посещает узел ReturnTree.
R visitSwitch(SwitchTree node, P p)
Посещает узел SwitchTree.
R visitSwitchExpression(SwitchExpressionTree node, P p)
Посещает узел SwitchExpressionTree.
R visitSynchronized(SynchronizedTree node, P p)
Посещает узел SynchronizedTree.
R visitThrow(ThrowTree node, P p)
Посещает узел ThrowTree.
R visitTry(TryTree node, P p)
Посещает узел TryTree.
R visitTypeCast(TypeCastTree node, P p)
Посещает узел TypeCastTree.
R visitTypeParameter(TypeParameterTree node, P p)
Посещает узел TypeParameterTree.
R visitUnary(UnaryTree node, P p)
Посещает узел UnaryTree.
R visitUnionType(UnionTypeTree node, P p)
Посещает узел UnionTypeTree.
R visitUses(UsesTree node, P p)
Посещает узел UsesTree.
R visitVariable(VariableTree node, P p)
Посещает узел VariableTree.
R visitWhileLoop(WhileLoopTree node, P p)
Посещает узел WhileLoopTree.
R visitWildcard(WildcardTree node, P p)
Посещает узел WildcardTypeTree.
R visitYield(YieldTree node, P p)
Посещает узел YieldTree.

Подробное описание методов

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 — значение параметра
Возвращает:
значение результата

visitAnyPattern

R visitAnyPattern(AnyPatternTree node, P p)
Посещает узел AnyPatternTree.
Параметры:
node — посещаемый узел
p — значение параметра
Возвращает:
значение результата
С версии:
22

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 — значение параметра
Возвращает:
значение результата
С версии:
14

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)
Посещает узел IntersectionTypeTree.
Параметры:
node — посещаемый узел
p — значение параметра
Возвращает:
значение результата

visitArrayType

R visitArrayType(ArrayTypeTree node, P p)
Посещает узел ArrayTypeTree.
Параметры:
node — посещаемый узел
p — значение параметра
Возвращает:
значение результата

visitTypeCast

R visitTypeCast(TypeCastTree node, P p)
Посещает узел TypeCastTree.
Параметры:
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 — значение параметра
Возвращает:
значение результата
Начиная с версии:
14

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/jdk.compiler/com/sun/source/tree/TreeVisitor.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API