Package org.eclipse.jdt.core.dom
Class GuardedPattern
java.lang.Object
org.eclipse.jdt.core.dom.ASTNode
org.eclipse.jdt.core.dom.Expression
org.eclipse.jdt.core.dom.Pattern
org.eclipse.jdt.core.dom.GuardedPattern
GuardedPattern pattern AST node type.
GuardedPattern: Pattern when Expression
- Since:
- 3.27
- Restriction:
- This class is not intended to be instantiated by clients.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final ChildPropertyDescriptor
The "expression" structural property of this node type (child type:Expression
).static final ChildPropertyDescriptor
The "pattern" structural property of this node type (child type:Pattern
).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, CASE_DEFAULT_EXPRESSION, CAST_EXPRESSION, CATCH_CLAUSE, CHARACTER_LITERAL, CLASS_INSTANCE_CREATION, COMPILATION_UNIT, CONDITIONAL_EXPRESSION, CONSTRUCTOR_INVOCATION, CONTINUE_STATEMENT, CREATION_REFERENCE, DIMENSION, DO_STATEMENT, EitherOr_MultiPattern, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, ENUM_CONSTANT_DECLARATION, ENUM_DECLARATION, EXPORTS_DIRECTIVE, EXPRESSION_METHOD_REFERENCE, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, GUARDED_PATTERN, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, INTERSECTION_TYPE, JAVADOC, JAVADOC_REGION, JAVADOC_TEXT_ELEMENT, 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, MODULE_QUALIFIED_NAME, NAME_QUALIFIED_TYPE, NORMAL_ANNOTATION, NULL_LITERAL, NULL_PATTERN, NUMBER_LITERAL, OPENS_DIRECTIVE, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, PATTERN_INSTANCEOF_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, PROVIDES_DIRECTIVE, QUALIFIED_NAME, QUALIFIED_TYPE, RECORD_DECLARATION, RECORD_PATTERN, RECOVERED, REQUIRES_DIRECTIVE, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_MEMBER_ANNOTATION, SINGLE_VARIABLE_DECLARATION, STRING_FRAGMENT, STRING_LITERAL, STRING_TEMPLATE_COMPONENT, STRING_TEMPLATE_EXPRESSION, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SUPER_METHOD_REFERENCE, SWITCH_CASE, SWITCH_EXPRESSION, SWITCH_STATEMENT, SYNCHRONIZED_STATEMENT, TAG_ELEMENT, TAG_PROPERTY, TEXT_BLOCK, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_METHOD_REFERENCE, TYPE_PARAMETER, TYPE_PATTERN, UNION_TYPE, UNNAMED_CLASS, USES_DIRECTIVE, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE, YIELD_STATEMENT
-
Method Summary
Modifier and TypeMethodDescriptionReturns the conditional expression of this pattern, ornull
if there is none (the "default:" case).Returns the pattern of this Guarded Pattern, orempty
if there is none.int
A character index into the original restricted identifier source string, or-1
if no restricted identifier source position information is available for this node;-1
by default.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
setExpression
(Expression expression) Sets the conditional expression of this pattern, or clears it (turns it into the "default:" case).void
setPattern
(Pattern pattern) Sets the pattern of this switch case.protected void
setRestrictedIdentifierStartPosition
(int restrictedIdentifierStartPosition) A character index into the original restricted identifier source string, or-1
if no restricted identifier source position information is available for this node;-1
by default.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 Details
-
PATTERN_PROPERTY
The "pattern" structural property of this node type (child type:Pattern
). (added in JEP 406). -
EXPRESSION_PROPERTY
The "expression" structural property of this node type (child type:Expression
). (added in JEP 406).
-
-
Method Details
-
propertyDescriptors
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.38
-
propertyDescriptors
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.38
-
getExpression
Returns the conditional expression of this pattern, ornull
if there is none (the "default:" case).- Returns:
- the expression node, or
null
if there is none - Since:
- 3.38
-
getPattern
Returns the pattern of this Guarded Pattern, orempty
if there is none.- Returns:
- the pattern node
(element type:
Pattern
) - Throws:
UnsupportedOperationException
- if this operation is used other than JLS18UnsupportedOperationException
- 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.
-
setExpression
Sets the conditional expression of this pattern, or clears it (turns it into the "default:" case).- Parameters:
expression
- the expression node, ornull
to turn it into the "default:" case- Throws:
IllegalArgumentException
- if:- the node belongs to a different AST
- the node already has a parent
- a cycle in would be created
- Since:
- 3.38
-
setPattern
Sets the pattern of this switch case.- Throws:
UnsupportedOperationException
- if this operation is used not for JLS18UnsupportedOperationException
- if this operation is used without previewEnabled- Since:
- 3.38
-
setRestrictedIdentifierStartPosition
protected void setRestrictedIdentifierStartPosition(int restrictedIdentifierStartPosition) A character index into the original restricted identifier source string, or-1
if no restricted identifier source position information is available for this node;-1
by default.- Restriction:
- since 3.30
-
getRestrictedIdentifierStartPosition
public int getRestrictedIdentifierStartPosition()A character index into the original restricted identifier source string, or-1
if no restricted identifier source position information is available for this node;-1
by default.- Since:
- 3.30
- Restriction:
-