Compiler Tree API

com.sun.source.tree
Enum Tree.Kind

java.lang.Object
  extended by java.lang.Enum<Tree.Kind>
      extended by com.sun.source.tree.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 Constant Summary
AND
          Used for instances of BinaryTree representing bitwise and logical "and" &.
AND_ASSIGNMENT
          Used for instances of CompoundAssignmentTree representing bitwise and logical "and" assignment &=.
ANNOTATION
          Used for instances of AnnotationTree.
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.
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.
EQUAL_TO
          Used for instances of BinaryTree representing equal-to ==.
ERRONEOUS
          Used for instances of ErroneousTree.
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.
LABELED_STATEMENT
          Used for instances of LabeledStatementTree.
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_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.
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.
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.
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.
REMAINDER
          Used for instances of BinaryTree representing remainder %.
REMAINDER_ASSIGNMENT
          Used for instances of CompoundAssignmentTree representing remainder assignment %=.
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_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.
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 >>>=.
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 ^=.
 
Method Summary
 Class<? extends Tree> asInterface()
           
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 inherited from class java.lang.Enum
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Enum Constant Detail

ANNOTATION

public static final Tree.Kind ANNOTATION
Used for instances of AnnotationTree.


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.


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.


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.


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.


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.


OTHER

public static final Tree.Kind OTHER
An implementation-reserved node. This is the not the node you are looking for.

Method Detail

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()

Compiler Tree API

Submit a bug or feature
Copyright © 2005, 2015, Oracle and/or its affiliates. All rights reserved.