Table of Contents
首页 API Docs 工具
openjdk / 11.0.11 / jdk.compiler / com / sun / source / tree / tree.kind.html /

Enum Tree.Kind

All Implemented Interfaces:
Serializable, Comparable<Tree.Kind>
Enclosing interface:
Tree
public static enum Tree.Kind
extends Enum<Tree.Kind>

Enumerates all kinds of trees.

Enum Constants

Enum Constant Description
AND

Used for instances of BinaryTree representing bitwise and logical "and" &.

AND_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing bitwise and logical "and" assignment &=.

ANNOTATED_TYPE

Used for instances of AnnotatedTypeTree representing annotated types.

ANNOTATION

Used for instances of AnnotationTree representing declaration annotations.

ANNOTATION_TYPE

Used for instances of ClassTree representing annotation types.

ARRAY_ACCESS

Used for instances of ArrayAccessTree.

ARRAY_TYPE

Used for instances of ArrayTypeTree.

ASSERT

Used for instances of AssertTree.

ASSIGNMENT

Used for instances of AssignmentTree.

BITWISE_COMPLEMENT

Used for instances of UnaryTree representing bitwise complement operator ~.

BLOCK

Used for instances of BlockTree.

BOOLEAN_LITERAL

Used for instances of LiteralTree representing a boolean literal expression of type boolean.

BREAK

Used for instances of BreakTree.

CASE

Used for instances of CaseTree.

CATCH

Used for instances of CatchTree.

CHAR_LITERAL

Used for instances of LiteralTree representing a character literal expression of type char.

CLASS

Used for instances of ClassTree representing classes.

COMPILATION_UNIT

Used for instances of CompilationUnitTree.

CONDITIONAL_AND

Used for instances of BinaryTree representing conditional-and &&.

CONDITIONAL_EXPRESSION

Used for instances of ConditionalExpressionTree.

CONDITIONAL_OR

Used for instances of BinaryTree representing conditional-or ||.

CONTINUE

Used for instances of ContinueTree.

DIVIDE

Used for instances of BinaryTree representing division /.

DIVIDE_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing division assignment /=.

DO_WHILE_LOOP

Used for instances of DoWhileLoopTree.

DOUBLE_LITERAL

Used for instances of LiteralTree representing a floating-point literal expression of type double.

EMPTY_STATEMENT

Used for instances of EmptyStatementTree.

ENHANCED_FOR_LOOP

Used for instances of EnhancedForLoopTree.

ENUM

Used for instances of ClassTree representing enums.

EQUAL_TO

Used for instances of BinaryTree representing equal-to ==.

ERRONEOUS

Used for instances of ErroneousTree.

EXPORTS

Used for instances of ExportsTree representing exports directives in a module declaration.

EXPRESSION_STATEMENT

Used for instances of ExpressionStatementTree.

EXTENDS_WILDCARD

Used for instances of WildcardTree representing an extends bounded wildcard type argument.

FLOAT_LITERAL

Used for instances of LiteralTree representing a floating-point literal expression of type float.

FOR_LOOP

Used for instances of ForLoopTree.

GREATER_THAN

Used for instances of BinaryTree representing greater-than >.

GREATER_THAN_EQUAL

Used for instances of BinaryTree representing greater-than-equal >=.

IDENTIFIER

Used for instances of IdentifierTree.

IF

Used for instances of IfTree.

IMPORT

Used for instances of ImportTree.

INSTANCE_OF

Used for instances of InstanceOfTree.

INT_LITERAL

Used for instances of LiteralTree representing an integral literal expression of type int.

INTERFACE

Used for instances of ClassTree representing interfaces.

INTERSECTION_TYPE

Used for instances of IntersectionTypeTree.

LABELED_STATEMENT

Used for instances of LabeledStatementTree.

LAMBDA_EXPRESSION

Used for instances of LambdaExpressionTree.

LEFT_SHIFT

Used for instances of BinaryTree representing left shift <<.

LEFT_SHIFT_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing left shift assignment <<=.

LESS_THAN

Used for instances of BinaryTree representing less-than <.

LESS_THAN_EQUAL

Used for instances of BinaryTree representing less-than-equal <=.

LOGICAL_COMPLEMENT

Used for instances of UnaryTree representing logical complement operator !.

LONG_LITERAL

Used for instances of LiteralTree representing an integral literal expression of type long.

MEMBER_REFERENCE

Used for instances of MemberReferenceTree.

MEMBER_SELECT

Used for instances of MemberSelectTree.

METHOD

Used for instances of MethodTree.

METHOD_INVOCATION

Used for instances of MethodInvocationTree.

MINUS

Used for instances of BinaryTree representing subtraction -.

MINUS_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing subtraction assignment -=.

MODIFIERS

Used for instances of ModifiersTree.

MODULE

Used for instances of ModuleTree representing module declarations.

MULTIPLY

Used for instances of BinaryTree representing multiplication *.

MULTIPLY_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing multiplication assignment *=.

NEW_ARRAY

Used for instances of NewArrayTree.

NEW_CLASS

Used for instances of NewClassTree.

NOT_EQUAL_TO

Used for instances of BinaryTree representing not-equal-to !=.

NULL_LITERAL

Used for instances of LiteralTree representing the use of null.

OPENS

Used for instances of ExportsTree representing opens directives in a module declaration.

OR

Used for instances of BinaryTree representing bitwise and logical "or" |.

OR_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing bitwise and logical "or" assignment |=.

OTHER

An implementation-reserved node.

PACKAGE

Used for instances of PackageTree.

PARAMETERIZED_TYPE

Used for instances of ParameterizedTypeTree.

PARENTHESIZED

Used for instances of ParenthesizedTree.

PLUS

Used for instances of BinaryTree representing addition or string concatenation +.

PLUS_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing addition or string concatenation assignment +=.

POSTFIX_DECREMENT

Used for instances of UnaryTree representing postfix decrement operator --.

POSTFIX_INCREMENT

Used for instances of UnaryTree representing postfix increment operator ++.

PREFIX_DECREMENT

Used for instances of UnaryTree representing prefix decrement operator --.

PREFIX_INCREMENT

Used for instances of UnaryTree representing prefix increment operator ++.

PRIMITIVE_TYPE

Used for instances of PrimitiveTypeTree.

PROVIDES

Used for instances of ProvidesTree representing provides directives in a module declaration.

REMAINDER

Used for instances of BinaryTree representing remainder %.

REMAINDER_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing remainder assignment %=.

REQUIRES

Used for instances of RequiresTree representing requires directives in a module declaration.

RETURN

Used for instances of ReturnTree.

RIGHT_SHIFT

Used for instances of BinaryTree representing right shift >>.

RIGHT_SHIFT_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing right shift assignment >>=.

STRING_LITERAL

Used for instances of LiteralTree representing a string literal expression of type String.

SUPER_WILDCARD

Used for instances of WildcardTree representing a super bounded wildcard type argument.

SWITCH

Used for instances of SwitchTree.

SYNCHRONIZED

Used for instances of SynchronizedTree.

THROW

Used for instances of ThrowTree.

TRY

Used for instances of TryTree.

TYPE_ANNOTATION

Used for instances of AnnotationTree representing type annotations.

TYPE_CAST

Used for instances of TypeCastTree.

TYPE_PARAMETER

Used for instances of TypeParameterTree.

UNARY_MINUS

Used for instances of UnaryTree representing unary minus operator -.

UNARY_PLUS

Used for instances of UnaryTree representing unary plus operator +.

UNBOUNDED_WILDCARD

Used for instances of WildcardTree representing an unbounded wildcard type argument.

UNION_TYPE

Used for instances of UnionTypeTree.

UNSIGNED_RIGHT_SHIFT

Used for instances of BinaryTree representing unsigned right shift >>>.

UNSIGNED_RIGHT_SHIFT_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing unsigned right shift assignment >>>=.

USES

Used for instances of UsesTree representing uses directives in a module declaration.

VARIABLE

Used for instances of VariableTree.

WHILE_LOOP

Used for instances of WhileLoopTree.

XOR

Used for instances of BinaryTree representing bitwise and logical "xor" ^.

XOR_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing bitwise and logical "xor" assignment ^=.

Methods

Modifier and Type Method Description
Class<? extends Tree> asInterface()

Returns the associated interface type that uses this kind.

static Tree.Kind valueOf​(String name)

Returns the enum constant of this type with the specified name.

static Tree.Kind[] values()

Returns an array containing the constants of this enum type, in the order they are declared.

Methods declared in class java.lang.Enum

clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf

Methods declared in class java.lang.Object

getClass, notify, notifyAll, wait, wait, wait

Enum Constants

ANNOTATED_TYPE

public static final Tree.Kind ANNOTATED_TYPE

Used for instances of AnnotatedTypeTree representing annotated types.

ANNOTATION

public static final Tree.Kind ANNOTATION

Used for instances of AnnotationTree representing declaration annotations.

TYPE_ANNOTATION

public static final Tree.Kind TYPE_ANNOTATION

Used for instances of AnnotationTree representing type annotations.

ARRAY_ACCESS

public static final Tree.Kind ARRAY_ACCESS

Used for instances of ArrayAccessTree.

ARRAY_TYPE

public static final Tree.Kind ARRAY_TYPE

Used for instances of ArrayTypeTree.

ASSERT

public static final Tree.Kind ASSERT

Used for instances of AssertTree.

ASSIGNMENT

public static final Tree.Kind ASSIGNMENT

Used for instances of AssignmentTree.

BLOCK

public static final Tree.Kind BLOCK

Used for instances of BlockTree.

BREAK

public static final Tree.Kind BREAK

Used for instances of BreakTree.

CASE

public static final Tree.Kind CASE

Used for instances of CaseTree.

CATCH

public static final Tree.Kind CATCH

Used for instances of CatchTree.

CLASS

public static final Tree.Kind CLASS

Used for instances of ClassTree representing classes.

COMPILATION_UNIT

public static final Tree.Kind COMPILATION_UNIT

Used for instances of CompilationUnitTree.

CONDITIONAL_EXPRESSION

public static final Tree.Kind CONDITIONAL_EXPRESSION

Used for instances of ConditionalExpressionTree.

CONTINUE

public static final Tree.Kind CONTINUE

Used for instances of ContinueTree.

DO_WHILE_LOOP

public static final Tree.Kind DO_WHILE_LOOP

Used for instances of DoWhileLoopTree.

ENHANCED_FOR_LOOP

public static final Tree.Kind ENHANCED_FOR_LOOP

Used for instances of EnhancedForLoopTree.

EXPRESSION_STATEMENT

public static final Tree.Kind EXPRESSION_STATEMENT

Used for instances of ExpressionStatementTree.

MEMBER_SELECT

public static final Tree.Kind MEMBER_SELECT

Used for instances of MemberSelectTree.

MEMBER_REFERENCE

public static final Tree.Kind MEMBER_REFERENCE

Used for instances of MemberReferenceTree.

FOR_LOOP

public static final Tree.Kind FOR_LOOP

Used for instances of ForLoopTree.

IDENTIFIER

public static final Tree.Kind IDENTIFIER

Used for instances of IdentifierTree.

IF

public static final Tree.Kind IF

Used for instances of IfTree.

IMPORT

public static final Tree.Kind IMPORT

Used for instances of ImportTree.

INSTANCE_OF

public static final Tree.Kind INSTANCE_OF

Used for instances of InstanceOfTree.

LABELED_STATEMENT

public static final Tree.Kind LABELED_STATEMENT

Used for instances of LabeledStatementTree.

METHOD

public static final Tree.Kind METHOD

Used for instances of MethodTree.

METHOD_INVOCATION

public static final Tree.Kind METHOD_INVOCATION

Used for instances of MethodInvocationTree.

MODIFIERS

public static final Tree.Kind MODIFIERS

Used for instances of ModifiersTree.

NEW_ARRAY

public static final Tree.Kind NEW_ARRAY

Used for instances of NewArrayTree.

NEW_CLASS

public static final Tree.Kind NEW_CLASS

Used for instances of NewClassTree.

LAMBDA_EXPRESSION

public static final Tree.Kind LAMBDA_EXPRESSION

Used for instances of LambdaExpressionTree.

PACKAGE

public static final Tree.Kind PACKAGE

Used for instances of PackageTree.

Since:
9

PARENTHESIZED

public static final Tree.Kind PARENTHESIZED

Used for instances of ParenthesizedTree.

PRIMITIVE_TYPE

public static final Tree.Kind PRIMITIVE_TYPE

Used for instances of PrimitiveTypeTree.

RETURN

public static final Tree.Kind RETURN

Used for instances of ReturnTree.

EMPTY_STATEMENT

public static final Tree.Kind EMPTY_STATEMENT

Used for instances of EmptyStatementTree.

SWITCH

public static final Tree.Kind SWITCH

Used for instances of SwitchTree.

SYNCHRONIZED

public static final Tree.Kind SYNCHRONIZED

Used for instances of SynchronizedTree.

THROW

public static final Tree.Kind THROW

Used for instances of ThrowTree.

TRY

public static final Tree.Kind TRY

Used for instances of TryTree.

PARAMETERIZED_TYPE

public static final Tree.Kind PARAMETERIZED_TYPE

Used for instances of ParameterizedTypeTree.

UNION_TYPE

public static final Tree.Kind UNION_TYPE

Used for instances of UnionTypeTree.

INTERSECTION_TYPE

public static final Tree.Kind INTERSECTION_TYPE

Used for instances of IntersectionTypeTree.

TYPE_CAST

public static final Tree.Kind TYPE_CAST

Used for instances of TypeCastTree.

TYPE_PARAMETER

public static final Tree.Kind TYPE_PARAMETER

Used for instances of TypeParameterTree.

VARIABLE

public static final Tree.Kind VARIABLE

Used for instances of VariableTree.

WHILE_LOOP

public static final Tree.Kind WHILE_LOOP

Used for instances of WhileLoopTree.

POSTFIX_INCREMENT

public static final Tree.Kind POSTFIX_INCREMENT

Used for instances of UnaryTree representing postfix increment operator ++.

POSTFIX_DECREMENT

public static final Tree.Kind POSTFIX_DECREMENT

Used for instances of UnaryTree representing postfix decrement operator --.

PREFIX_INCREMENT

public static final Tree.Kind PREFIX_INCREMENT

Used for instances of UnaryTree representing prefix increment operator ++.

PREFIX_DECREMENT

public static final Tree.Kind PREFIX_DECREMENT

Used for instances of UnaryTree representing prefix decrement operator --.

UNARY_PLUS

public static final Tree.Kind UNARY_PLUS

Used for instances of UnaryTree representing unary plus operator +.

UNARY_MINUS

public static final Tree.Kind UNARY_MINUS

Used for instances of UnaryTree representing unary minus operator -.

BITWISE_COMPLEMENT

public static final Tree.Kind BITWISE_COMPLEMENT

Used for instances of UnaryTree representing bitwise complement operator ~.

LOGICAL_COMPLEMENT

public static final Tree.Kind LOGICAL_COMPLEMENT

Used for instances of UnaryTree representing logical complement operator !.

MULTIPLY

public static final Tree.Kind MULTIPLY

Used for instances of BinaryTree representing multiplication *.

DIVIDE

public static final Tree.Kind DIVIDE

Used for instances of BinaryTree representing division /.

REMAINDER

public static final Tree.Kind REMAINDER

Used for instances of BinaryTree representing remainder %.

PLUS

public static final Tree.Kind PLUS

Used for instances of BinaryTree representing addition or string concatenation +.

MINUS

public static final Tree.Kind MINUS

Used for instances of BinaryTree representing subtraction -.

LEFT_SHIFT

public static final Tree.Kind LEFT_SHIFT

Used for instances of BinaryTree representing left shift <<.

RIGHT_SHIFT

public static final Tree.Kind RIGHT_SHIFT

Used for instances of BinaryTree representing right shift >>.

UNSIGNED_RIGHT_SHIFT

public static final Tree.Kind UNSIGNED_RIGHT_SHIFT

Used for instances of BinaryTree representing unsigned right shift >>>.

LESS_THAN

public static final Tree.Kind LESS_THAN

Used for instances of BinaryTree representing less-than <.

GREATER_THAN

public static final Tree.Kind GREATER_THAN

Used for instances of BinaryTree representing greater-than >.

LESS_THAN_EQUAL

public static final Tree.Kind LESS_THAN_EQUAL

Used for instances of BinaryTree representing less-than-equal <=.

GREATER_THAN_EQUAL

public static final Tree.Kind GREATER_THAN_EQUAL

Used for instances of BinaryTree representing greater-than-equal >=.

EQUAL_TO

public static final Tree.Kind EQUAL_TO

Used for instances of BinaryTree representing equal-to ==.

NOT_EQUAL_TO

public static final Tree.Kind NOT_EQUAL_TO

Used for instances of BinaryTree representing not-equal-to !=.

AND

public static final Tree.Kind AND

Used for instances of BinaryTree representing bitwise and logical "and" &.

XOR

public static final Tree.Kind XOR

Used for instances of BinaryTree representing bitwise and logical "xor" ^.

OR

public static final Tree.Kind OR

Used for instances of BinaryTree representing bitwise and logical "or" |.

CONDITIONAL_AND

public static final Tree.Kind CONDITIONAL_AND

Used for instances of BinaryTree representing conditional-and &&.

CONDITIONAL_OR

public static final Tree.Kind CONDITIONAL_OR

Used for instances of BinaryTree representing conditional-or ||.

MULTIPLY_ASSIGNMENT

public static final Tree.Kind MULTIPLY_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing multiplication assignment *=.

DIVIDE_ASSIGNMENT

public static final Tree.Kind DIVIDE_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing division assignment /=.

REMAINDER_ASSIGNMENT

public static final Tree.Kind REMAINDER_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing remainder assignment %=.

PLUS_ASSIGNMENT

public static final Tree.Kind PLUS_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing addition or string concatenation assignment +=.

MINUS_ASSIGNMENT

public static final Tree.Kind MINUS_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing subtraction assignment -=.

LEFT_SHIFT_ASSIGNMENT

public static final Tree.Kind LEFT_SHIFT_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing left shift assignment <<=.

RIGHT_SHIFT_ASSIGNMENT

public static final Tree.Kind RIGHT_SHIFT_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing right shift assignment >>=.

UNSIGNED_RIGHT_SHIFT_ASSIGNMENT

public static final Tree.Kind UNSIGNED_RIGHT_SHIFT_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing unsigned right shift assignment >>>=.

AND_ASSIGNMENT

public static final Tree.Kind AND_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing bitwise and logical "and" assignment &=.

XOR_ASSIGNMENT

public static final Tree.Kind XOR_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing bitwise and logical "xor" assignment ^=.

OR_ASSIGNMENT

public static final Tree.Kind OR_ASSIGNMENT

Used for instances of CompoundAssignmentTree representing bitwise and logical "or" assignment |=.

INT_LITERAL

public static final Tree.Kind INT_LITERAL

Used for instances of LiteralTree representing an integral literal expression of type int.

LONG_LITERAL

public static final Tree.Kind LONG_LITERAL

Used for instances of LiteralTree representing an integral literal expression of type long.

FLOAT_LITERAL

public static final Tree.Kind FLOAT_LITERAL

Used for instances of LiteralTree representing a floating-point literal expression of type float.

DOUBLE_LITERAL

public static final Tree.Kind DOUBLE_LITERAL

Used for instances of LiteralTree representing a floating-point literal expression of type double.

BOOLEAN_LITERAL

public static final Tree.Kind BOOLEAN_LITERAL

Used for instances of LiteralTree representing a boolean literal expression of type boolean.

CHAR_LITERAL

public static final Tree.Kind CHAR_LITERAL

Used for instances of LiteralTree representing a character literal expression of type char.

STRING_LITERAL

public static final Tree.Kind STRING_LITERAL

Used for instances of LiteralTree representing a string literal expression of type String.

NULL_LITERAL

public static final Tree.Kind NULL_LITERAL

Used for instances of LiteralTree representing the use of null.

UNBOUNDED_WILDCARD

public static final Tree.Kind UNBOUNDED_WILDCARD

Used for instances of WildcardTree representing an unbounded wildcard type argument.

EXTENDS_WILDCARD

public static final Tree.Kind EXTENDS_WILDCARD

Used for instances of WildcardTree representing an extends bounded wildcard type argument.

SUPER_WILDCARD

public static final Tree.Kind SUPER_WILDCARD

Used for instances of WildcardTree representing a super bounded wildcard type argument.

ERRONEOUS

public static final Tree.Kind ERRONEOUS

Used for instances of ErroneousTree.

INTERFACE

public static final Tree.Kind INTERFACE

Used for instances of ClassTree representing interfaces.

ENUM

public static final Tree.Kind ENUM

Used for instances of ClassTree representing enums.

ANNOTATION_TYPE

public static final Tree.Kind ANNOTATION_TYPE

Used for instances of ClassTree representing annotation types.

MODULE

public static final Tree.Kind MODULE

Used for instances of ModuleTree representing module declarations.

EXPORTS

public static final Tree.Kind EXPORTS

Used for instances of ExportsTree representing exports directives in a module declaration.

OPENS

public static final Tree.Kind OPENS

Used for instances of ExportsTree representing opens directives in a module declaration.

PROVIDES

public static final Tree.Kind PROVIDES

Used for instances of ProvidesTree representing provides directives in a module declaration.

REQUIRES

public static final Tree.Kind REQUIRES

Used for instances of RequiresTree representing requires directives in a module declaration.

USES

public static final Tree.Kind USES

Used for instances of UsesTree representing uses directives in a module declaration.

OTHER

public static final Tree.Kind OTHER

An implementation-reserved node. This is the not the node you are looking for.

Methods

values

public static Tree.Kind[] values()

Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

for (Tree.Kind c : Tree.Kind.values())
    System.out.println(c);

Returns:
an array containing the constants of this enum type, in the order they are declared

valueOf

public static Tree.Kind valueOf(String name)

Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Parameters:
name - the name of the enum constant to be returned.
Returns:
the enum constant with the specified name
Throws:
IllegalArgumentException - if this enum type has no constant with the specified name
NullPointerException - if the argument is null

asInterface

public Class<? extends Tree> asInterface()

Returns the associated interface type that uses this kind.

Returns:
the associated interface

© 1993, 2020, 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/11/docs/api/jdk.compiler/com/sun/source/tree/Tree.Kind.html