Package org.eclipse.jdt.core.dom
Class StringLiteral
- java.lang.Object
-
- org.eclipse.jdt.core.dom.ASTNode
-
- org.eclipse.jdt.core.dom.Expression
-
- org.eclipse.jdt.core.dom.StringLiteral
-
public class StringLiteral extends Expression
String literal nodes.- Since:
- 2.0
- Restriction:
- This class is not intended to be instantiated by clients.
-
-
Field Summary
Fields Modifier and Type Field Description static SimplePropertyDescriptor
ESCAPED_VALUE_PROPERTY
The "escapedValue" structural property of this node type (type:String
).-
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 String
getEscapedValue()
Returns the string value of this literal node to the given string literal token.String
getLiteralValue()
Returns the value of this literal node.static List
propertyDescriptors(int apiLevel)
Returns a list of structural property descriptors for this node type.void
setEscapedValue(String token)
Sets the string value of this literal node to the given string literal token.void
setLiteralValue(String value)
Sets the value of this literal node.-
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
-
ESCAPED_VALUE_PROPERTY
public static final SimplePropertyDescriptor ESCAPED_VALUE_PROPERTY
The "escapedValue" structural property of this node type (type:String
).- Since:
- 3.0
-
-
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
-
getEscapedValue
public String getEscapedValue()
Returns the string value of this literal node to the given string literal token. The token is the sequence of characters that would appear in the source program, including enclosing double quotes and embedded escapes.- Returns:
- the string literal token, including enclosing double quotes and embedded escapes
-
setEscapedValue
public void setEscapedValue(String token)
Sets the string value of this literal node to the given string literal token. The token is the sequence of characters that would appear in the source program, including enclosing double quotes and embedded escapes. For example,""
setLiteral("\"\"")
"hello world"
setLiteral("\"hello world\"")
"boo\nhoo"
setLiteral("\"boo\\nhoo\"")
- Parameters:
token
- the string literal token, including enclosing double quotes and embedded escapes- Throws:
IllegalArgumentException
- if the argument is incorrect
-
getLiteralValue
public String getLiteralValue()
Returns the value of this literal node.For example,
StringLiteral s; s.setEscapedValue("\"hello\\nworld\""); assert s.getLiteralValue().equals("hello\nworld");
Note that this is a convenience method that converts from the stored string literal token returned by
getEscapedLiteral
.- Returns:
- the string value without enclosing double quotes and embedded escapes
- Throws:
IllegalArgumentException
- if the literal value cannot be converted
-
setLiteralValue
public void setLiteralValue(String value)
Sets the value of this literal node.For example,
StringLiteral s; s.setLiteralValue("hello\nworld"); assert s.getEscapedValue().equals("\"hello\\nworld\""); assert s.getLiteralValue().equals("hello\nworld");
Note that this is a convenience method that converts to the stored string literal token acceptable to
setEscapedLiteral
.- Parameters:
value
- the string value without enclosing double quotes and embedded escapes- Throws:
IllegalArgumentException
- if the argument is incorrect
-
-