Package org.eclipse.jdt.core.dom
Class InstanceofExpression
- java.lang.Object
-
- org.eclipse.jdt.core.dom.ASTNode
-
- org.eclipse.jdt.core.dom.Expression
-
- org.eclipse.jdt.core.dom.InstanceofExpression
-
public class InstanceofExpression extends Expression
Instanceof expression AST node type.InstanceofExpression: Expression instanceof Type
- Since:
- 2.0
- Restriction:
- This class is not intended to be instantiated by clients.
-
-
Field Summary
Fields Modifier and Type Field Description static ChildPropertyDescriptor
LEFT_OPERAND_PROPERTY
The "leftOperand" structural property of this node type (child type:Expression
).static ChildPropertyDescriptor
PATTERN_VARIABLE_PROPERTY
The "patternVariable" structural property of this node type (child type:SingleVariableDeclaration
) (added in JLS14 API).static ChildPropertyDescriptor
RIGHT_OPERAND_PROPERTY
The "rightOperand" structural property of this node type (child type:Type
).-
Fields inherited from class org.eclipse.jdt.core.dom.ASTNode
ANNOTATION_TYPE_DECLARATION, ANNOTATION_TYPE_MEMBER_DECLARATION, ANONYMOUS_CLASS_DECLARATION, ARRAY_ACCESS, ARRAY_CREATION, ARRAY_INITIALIZER, ARRAY_TYPE, ASSERT_STATEMENT, ASSIGNMENT, BLOCK, BLOCK_COMMENT, BOOLEAN_LITERAL, BREAK_STATEMENT, CAST_EXPRESSION, CATCH_CLAUSE, CHARACTER_LITERAL, CLASS_INSTANCE_CREATION, COMPILATION_UNIT, CONDITIONAL_EXPRESSION, CONSTRUCTOR_INVOCATION, CONTINUE_STATEMENT, CREATION_REFERENCE, DIMENSION, DO_STATEMENT, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, ENUM_CONSTANT_DECLARATION, ENUM_DECLARATION, EXPORTS_DIRECTIVE, EXPRESSION_METHOD_REFERENCE, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, INTERSECTION_TYPE, JAVADOC, LABELED_STATEMENT, LAMBDA_EXPRESSION, LINE_COMMENT, MALFORMED, MARKER_ANNOTATION, MEMBER_REF, MEMBER_VALUE_PAIR, METHOD_DECLARATION, METHOD_INVOCATION, METHOD_REF, METHOD_REF_PARAMETER, MODIFIER, MODULE_DECLARATION, MODULE_MODIFIER, NAME_QUALIFIED_TYPE, NORMAL_ANNOTATION, NULL_LITERAL, NUMBER_LITERAL, OPENS_DIRECTIVE, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, PROVIDES_DIRECTIVE, QUALIFIED_NAME, QUALIFIED_TYPE, RECORD_DECLARATION, RECOVERED, REQUIRES_DIRECTIVE, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_MEMBER_ANNOTATION, SINGLE_VARIABLE_DECLARATION, STRING_LITERAL, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SUPER_METHOD_REFERENCE, SWITCH_CASE, SWITCH_EXPRESSION, SWITCH_STATEMENT, SYNCHRONIZED_STATEMENT, TAG_ELEMENT, TEXT_BLOCK, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_METHOD_REFERENCE, TYPE_PARAMETER, UNION_TYPE, USES_DIRECTIVE, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE, YIELD_STATEMENT
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Expression
getLeftOperand()
Returns the left operand of this instanceof expression.SingleVariableDeclaration
getPatternVariable()
Returns the patternVariable of this instanceof expression.Type
getRightOperand()
Returns the right operand of this instanceof expression.static List
propertyDescriptors(int apiLevel)
Returns a list of structural property descriptors for this node type.static List
propertyDescriptors(int apiLevel, boolean previewEnabled)
Returns a list of structural property descriptors for this node type.void
setLeftOperand(Expression expression)
Sets the left operand of this instanceof expression.void
setPatternVariable(SingleVariableDeclaration referencePatternVariable)
Sets the patternVariable of this instanceof expression.void
setRightOperand(Type referenceType)
Sets the right operand of this instanceof expression.-
Methods inherited from class org.eclipse.jdt.core.dom.Expression
resolveBoxing, resolveConstantExpressionValue, resolveTypeBinding, resolveUnboxing
-
Methods inherited from class org.eclipse.jdt.core.dom.ASTNode
accept, copySubtree, copySubtrees, delete, equals, getAST, getFlags, getLength, getLocationInParent, getNodeType, getParent, getProperty, getRoot, getStartPosition, getStructuralProperty, hashCode, nodeClassForType, properties, setFlags, setProperty, setSourceRange, setStructuralProperty, structuralPropertiesForType, subtreeBytes, subtreeMatch, toString
-
-
-
-
Field Detail
-
LEFT_OPERAND_PROPERTY
public static final ChildPropertyDescriptor LEFT_OPERAND_PROPERTY
The "leftOperand" structural property of this node type (child type:Expression
).- Since:
- 3.0
-
RIGHT_OPERAND_PROPERTY
public static final ChildPropertyDescriptor RIGHT_OPERAND_PROPERTY
The "rightOperand" structural property of this node type (child type:Type
).- Since:
- 3.0
-
PATTERN_VARIABLE_PROPERTY
public static final ChildPropertyDescriptor PATTERN_VARIABLE_PROPERTY
The "patternVariable" structural property of this node type (child type:SingleVariableDeclaration
) (added in JLS14 API).- Since:
- 3.22
- Restriction:
- This property is not intended to be referenced by clients as it is a part of Java preview feature.
-
-
Method Detail
-
propertyDescriptors
public static List propertyDescriptors(int apiLevel)
Returns a list of structural property descriptors for this node type. Clients must not modify the result.- Parameters:
apiLevel
- the API level; one of theAST.JLS*
constants- Returns:
- a list of property descriptors (element type:
StructuralPropertyDescriptor
) - Since:
- 3.0
-
propertyDescriptors
public static List propertyDescriptors(int apiLevel, boolean previewEnabled)
Returns a list of structural property descriptors for this node type. Clients must not modify the result.- Parameters:
apiLevel
- the API level; one of theAST.JLS*
constantspreviewEnabled
- the previewEnabled flag- Returns:
- a list of property descriptors (element type:
StructuralPropertyDescriptor
) - Since:
- 3.22
- Restriction:
- This method is not intended to be referenced by clients.
-
getLeftOperand
public Expression getLeftOperand()
Returns the left operand of this instanceof expression.- Returns:
- the left operand node
-
setLeftOperand
public void setLeftOperand(Expression expression)
Sets the left operand of this instanceof expression.- Parameters:
expression
- the left operand node- Throws:
IllegalArgumentException
- if:- the node belongs to a different AST
- the node already has a parent
- a cycle in would be created
-
getRightOperand
public Type getRightOperand()
Returns the right operand of this instanceof expression.- Returns:
- the right operand node
-
setRightOperand
public void setRightOperand(Type referenceType)
Sets the right operand of this instanceof expression.- Parameters:
referenceType
- the right operand node- Throws:
IllegalArgumentException
- if:- the node belongs to a different AST
- the node already has a parent
- a cycle in would be created
-
getPatternVariable
public SingleVariableDeclaration getPatternVariable()
Returns the patternVariable of this instanceof expression.- Returns:
- the patternVariable node
- Throws:
UnsupportedOperationException
- if this operation is used other than JLS14UnsupportedOperationException
- if this expression is used with previewEnabled flag as false- Restriction:
- This method is not intended to be referenced by clients as it is a part of Java preview feature.
- Restriction:
- This method is not intended to be re-implemented or extended by clients as it is a part of Java preview feature.
-
setPatternVariable
public void setPatternVariable(SingleVariableDeclaration referencePatternVariable)
Sets the patternVariable of this instanceof expression.- Parameters:
referencePatternVariable
- the right operand node- Throws:
IllegalArgumentException
- if:UnsupportedOperationException
- if this operation is used other than JLS14UnsupportedOperationException
- if this expression is used with previewEnabled flag as false- Restriction:
- This method is not intended to be referenced by clients as it is a part of Java preview feature.
- Restriction:
- This method is not intended to be re-implemented or extended by clients as it is a part of Java preview feature.
-
-