org.extendj.ast
node type StringLiteral

General Info

Production
StringLiteral : Literal;
Type Hierarchy:
java.lang.Object
  extended by beaver.Symbol
      extended by org.extendj.ast.ASTNode<ASTNode>
          extended by org.extendj.ast.Expr
              extended by org.extendj.ast.PrimaryExpr
                  extended by org.extendj.ast.Literal
                      extended by org.extendj.ast.StringLiteral
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Iterable<ASTNode>, org.jastadd.util.PrettyPrintable

Description

String literal. May not contain Unicode escape sequences (Unicode escapes are transcoded by the scanner).
Source
Declared in /home/jesper/git/extendj/java7/grammar/Literals.ast at line 37

Member Filters

API level:

Aspect:

Constructors

public StringLiteral()
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 1
public StringLiteral(java.lang.String p0)
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 12
public StringLiteral(beaver.Symbol p0)
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 15

Attributes

@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant constant()
Overrides:constant in class Literal
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 37
Aspect
ConstantExpression
Source
Declared in /home/jesper/git/extendj/java4/frontend/PrettyPrintUtil.jrag at line 263
Aspect
PrettyPrintUtil
Specified by:type in class Expr
Source
Declared in /home/jesper/git/extendj/java4/frontend/TypeAnalysis.jrag at line 302
Aspect
TypeAnalysis

Methods

public void prettyPrint(org.jastadd.util.PrettyPrinter out)
Specified by:prettyPrint in interface org.jastadd.util.PrettyPrintableOverrides:prettyPrint in class Literal
Source
Declared in /home/jesper/git/extendj/java4/frontend/PrettyPrint.jadd at line 470
Aspect
Java4PrettyPrint
public static void push(org.extendj.ast.CodeGeneration gen,
                        java.lang.String value)
Source
Declared in /home/jesper/git/extendj/java4/backend/CodeGeneration.jrag at line 156
Aspect
CodeGeneration
public void emitPushConstant(org.extendj.ast.CodeGeneration gen)
Overrides:emitPushConstant in class Literal
Source
Declared in /home/jesper/git/extendj/java4/backend/CodeGeneration.jrag at line 201
Aspect
CodeGeneration
public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.
Overrides:init$Children in class Literal
Source
Declared in /home/jesper/git/extendj/ASTNode at line 10
protected int numChildren()
Overrides:numChildren in class Literal
Source
Declared in /home/jesper/git/extendj/ASTNode at line 21
public boolean mayHaveRewrite()
Overrides:mayHaveRewrite in class Literal
Source
Declared in /home/jesper/git/extendj/ASTNode at line 27
public void flushAttrCache()
Overrides:flushAttrCache in class Literal
Source
Declared in /home/jesper/git/extendj/ASTNode at line 33
public void flushCollectionCache()
Overrides:flushCollectionCache in class Literal
Source
Declared in /home/jesper/git/extendj/ASTNode at line 41
public void flushRewriteCache()
Overrides:flushRewriteCache in class Literal
Source
Declared in /home/jesper/git/extendj/ASTNode at line 47
public StringLiteral clone()
                    throws java.lang.CloneNotSupportedException
Overrides:clone in class Literal
Throws:
java.lang.CloneNotSupportedException
Source
Declared in /home/jesper/git/extendj/ASTNode at line 53
public StringLiteral copy()
Overrides:copy in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/ASTNode at line 60
@Deprecated
public StringLiteral fullCopy()
Deprecated. Please use treeCopy or treeCopyNoTransform instead

Create a deep copy of the AST subtree at this node. The copy is dangling, i.e. has no parent.

Specified by:fullCopy in class Literal
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 79
public StringLiteral treeCopyNoTransform()
Create a deep copy of the AST subtree at this node. The copy is dangling, i.e. has no parent.
Specified by:treeCopyNoTransform in class Literal
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 89
public StringLiteral treeCopy()
Create a deep copy of the AST subtree at this node. The subtree of this node is traversed to trigger rewrites before copy. The copy is dangling, i.e. has no parent.
Specified by:treeCopy in class Literal
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 109
protected boolean is$Equal(ASTNode node)
Overrides:is$Equal in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/ASTNode at line 116
public void setLITERAL(java.lang.String value)
Replaces the lexeme LITERAL.
Overrides:setLITERAL in class Literal
Parameters:
value - The new value for the lexeme LITERAL.
public void setLITERAL(beaver.Symbol symbol)
JastAdd-internal setter for lexeme LITERAL using the Beaver parser.
Overrides:setLITERAL in class Literal
Parameters:
symbol - Symbol containing the new value for the lexeme LITERAL
@ASTNodeAnnotation.Token(name="LITERAL")
public java.lang.String getLITERAL()
Retrieves the value for the lexeme LITERAL.
Overrides:getLITERAL in class Literal
Returns:
The value for the lexeme LITERAL.
Overrides:rewriteTo in class Literal

Fields

protected boolean constant_computed
protected org.extendj.ast.Constant constant_value
protected boolean type_computed

Inherited Members

Attributes inherited from org.extendj.ast.Literal

Attributes inherited from org.extendj.ast.Expr

Attributes inherited from org.extendj.ast.ASTNode

Methods inherited from class org.extendj.ast.Literal

Methods inherited from class org.extendj.ast.Expr

Methods inherited from class org.extendj.ast.ASTNode

Methods inherited from class beaver.Symbol

getColumn
getEnd
getId
getLine
getStart
makePosition

Methods inherited from class java.lang.Object

equals
finalize
getClass
hashCode
notify
notifyAll
wait
wait
wait

Fields inherited from org.extendj.ast.Literal

Fields inherited from org.extendj.ast.Expr

Fields inherited from org.extendj.ast.ASTNode

Fields inherited from beaver.Symbol

end
id
start
value