org.extendj.ast
node type CharType

General Info

Production
CharType : IntegralType;
Type Hierarchy:
java.lang.Object
  extended by beaver.Symbol
      extended by org.extendj.ast.ASTNode<ASTNode>
          extended by org.extendj.ast.TypeDecl
              extended by org.extendj.ast.PrimitiveType
                  extended by org.extendj.ast.NumericType
                      extended by org.extendj.ast.IntegralType
                          extended by org.extendj.ast.CharType
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Iterable<ASTNode>, java.util.Iterator, org.jastadd.util.PrettyPrintable
static class SimpleSet.SimpleSetImpl
           

Description

Source
Declared in /home/jesper/git/extendj/java4/grammar/Java.ast at line 57

Member Filters

API level:

Aspect:

Constructors

public CharType()
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 1
public CharType(Modifiers p0,
                java.lang.String p1,
                Opt<Access> p2,
                List<BodyDecl> p3)
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 15
public CharType(Modifiers p0,
                beaver.Symbol p1,
                Opt<Access> p2,
                List<BodyDecl> p3)
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 21

Attributes

@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant cast(org.extendj.ast.Constant c)
Overrides:cast in class IntegralType
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 72
Aspect
ConstantExpression
Overrides:narrowingConversionTo in class PrimitiveType
Source
Declared in /home/jesper/git/extendj/java4/frontend/TypeAnalysis.jrag at line 39
Aspect
TypeConversion
Overrides:unaryNumericPromotion in class NumericType
Source
Declared in /home/jesper/git/extendj/java4/frontend/TypeAnalysis.jrag at line 169
Aspect
NumericPromotion
Overrides:isChar in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/TypeAnalysis.jrag at line 209
Aspect
TypeAnalysis
Overrides:arrayLoad in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/backend/CodeGeneration.jrag at line 249
Aspect
CodeGeneration
Overrides:arrayStore in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/backend/CodeGeneration.jrag at line 380
Aspect
CodeGeneration
Overrides:typeDescriptor in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/backend/ConstantPoolNames.jrag at line 77
Aspect
ConstantPoolNames
Overrides:arrayPrimitiveTypeDescriptor in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/backend/CreateBCode.jrag at line 905
Aspect
CreateBCode
@ASTNodeAnnotation.Attribute
syn java.lang.String jvmName()
Overrides:jvmName in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/backend/Java2Rewrites.jrag at line 36
Aspect
Java2Rewrites
Overrides:primitiveClassName in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/backend/Java2Rewrites.jrag at line 68
Aspect
Java2Rewrites
Overrides:boxed in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java5/frontend/AutoBoxing.jrag at line 56
Aspect
AutoBoxing

Methods

public void prettyPrint(org.jastadd.util.PrettyPrinter out)
Specified by:prettyPrint in interface org.jastadd.util.PrettyPrintableOverrides:prettyPrint in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java4/frontend/PrettyPrint.jadd at line 216
Aspect
Java4PrettyPrint
public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.
Overrides:init$Children in class IntegralType
Source
Declared in /home/jesper/git/extendj/ASTNode at line 10
protected int numChildren()
Overrides:numChildren in class IntegralType
Source
Declared in /home/jesper/git/extendj/ASTNode at line 30
public boolean mayHaveRewrite()
Overrides:mayHaveRewrite in class IntegralType
Source
Declared in /home/jesper/git/extendj/ASTNode at line 36
public void flushAttrCache()
Overrides:flushAttrCache in class IntegralType
Source
Declared in /home/jesper/git/extendj/ASTNode at line 42
public void flushCollectionCache()
Overrides:flushCollectionCache in class IntegralType
Source
Declared in /home/jesper/git/extendj/ASTNode at line 53
public void flushRewriteCache()
Overrides:flushRewriteCache in class IntegralType
Source
Declared in /home/jesper/git/extendj/ASTNode at line 59
public CharType clone()
               throws java.lang.CloneNotSupportedException
Overrides:clone in class IntegralType
Throws:
java.lang.CloneNotSupportedException
Source
Declared in /home/jesper/git/extendj/ASTNode at line 65
public CharType copy()
Overrides:copy in class PrimitiveType
Source
Declared in /home/jesper/git/extendj/ASTNode at line 72
@Deprecated
public CharType 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 IntegralType
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 91
public CharType 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 IntegralType
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 101
public CharType 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 IntegralType
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 121
protected boolean is$Equal(ASTNode node)
Overrides:is$Equal in class PrimitiveType
Source
Declared in /home/jesper/git/extendj/ASTNode at line 128
public void setModifiers(Modifiers node)
Replaces the Modifiers child.
Overrides:setModifiers in class IntegralType
Parameters:
node - The new node to replace the Modifiers child.
Retrieves the Modifiers child.
Overrides:getModifiers in class IntegralType
Returns:
The current node used as the Modifiers child.
Retrieves the Modifiers child.

This method does not invoke AST transformations.

Overrides:getModifiersNoTransform in class IntegralType
Returns:
The current node used as the Modifiers child.
public void setID(java.lang.String value)
Replaces the lexeme ID.
Overrides:setID in class IntegralType
Parameters:
value - The new value for the lexeme ID.
public void setID(beaver.Symbol symbol)
JastAdd-internal setter for lexeme ID using the Beaver parser.
Overrides:setID in class IntegralType
Parameters:
symbol - Symbol containing the new value for the lexeme ID
@ASTNodeAnnotation.Token(name="ID")
public java.lang.String getID()
Retrieves the value for the lexeme ID.
Overrides:getID in class IntegralType
Returns:
The value for the lexeme ID.
public void setSuperClassOpt(Opt<Access> opt)
Replaces the optional node for the SuperClass child. This is the Opt node containing the child SuperClass, not the actual child!
Overrides:setSuperClassOpt in class IntegralType
Parameters:
opt - The new node to be used as the optional node for the SuperClass child.
public void setSuperClass(Access node)
Replaces the (optional) SuperClass child.
Overrides:setSuperClass in class IntegralType
Parameters:
node - The new node to be used as the SuperClass child.
public boolean hasSuperClass()
Check whether the optional SuperClass child exists.
Overrides:hasSuperClass in class IntegralType
Returns:
true if the optional SuperClass child exists, false if it does not.
Retrieves the (optional) SuperClass child.
Overrides:getSuperClass in class IntegralType
Returns:
The SuperClass child, if it exists. Returns null otherwise.
Retrieves the optional node for the SuperClass child. This is the Opt node containing the child SuperClass, not the actual child!
Overrides:getSuperClassOpt in class IntegralType
Returns:
The optional node for child the SuperClass child.
Retrieves the optional node for child SuperClass. This is the Opt node containing the child SuperClass, not the actual child!

This method does not invoke AST transformations.

Overrides:getSuperClassOptNoTransform in class IntegralType
Returns:
The optional node for child SuperClass.
public void setBodyDeclList(List<BodyDecl> list)
Replaces the BodyDecl list.
Overrides:setBodyDeclList in class IntegralType
Parameters:
list - The new list node to be used as the BodyDecl list.
public int getNumBodyDecl()
Retrieves the number of children in the BodyDecl list.
Overrides:getNumBodyDecl in class IntegralType
Returns:
Number of children in the BodyDecl list.
Retrieves the number of children in the BodyDecl list. Calling this method will not trigger rewrites.
Overrides:getNumBodyDeclNoTransform in class IntegralType
Returns:
Number of children in the BodyDecl list.
public BodyDecl getBodyDecl(int i)
Retrieves the element at index i in the BodyDecl list.
Overrides:getBodyDecl in class IntegralType
Parameters:
i - Index of the element to return.
Returns:
The element at position i in the BodyDecl list.
public boolean hasBodyDecl()
Check whether the BodyDecl list has any children.
Overrides:hasBodyDecl in class IntegralType
Returns:
true if it has at least one child, false otherwise.
public void addBodyDecl(BodyDecl node)
Append an element to the BodyDecl list.
Overrides:addBodyDecl in class IntegralType
Parameters:
node - The element to append to the BodyDecl list.
public void setBodyDecl(BodyDecl node,
                        int i)
Replaces the BodyDecl list element at index i with the new node node.
Overrides:setBodyDecl in class IntegralType
Parameters:
node - The new node to replace the old list element.
i - The list index of the node to be replaced.
Retrieves the BodyDecl list.
Overrides:getBodyDeclList in class IntegralType
Returns:
The node representing the BodyDecl list.
Retrieves the BodyDecl list.

This method does not invoke AST transformations.

Overrides:getBodyDeclListNoTransform in class IntegralType
Returns:
The node representing the BodyDecl list.
Retrieves the BodyDecl list.
Overrides:getBodyDecls in class IntegralType
Returns:
The node representing the BodyDecl list.
Retrieves the BodyDecl list.

This method does not invoke AST transformations.

Overrides:getBodyDeclsNoTransform in class IntegralType
Returns:
The node representing the BodyDecl list.
Overrides:rewriteTo in class IntegralType
public int size()
public boolean isEmpty()
public boolean contains(java.lang.Object o)
public org.extendj.ast.SimpleSet lookupVariable(java.lang.String name)

Fields

protected boolean typeDescriptor_computed
protected java.lang.String typeDescriptor_value
protected boolean jvmName_computed
protected java.lang.String jvmName_value
protected boolean boxed_computed
public static final org.extendj.ast.SimpleSet emptySet
public static final org.extendj.ast.SimpleSet fullSet

Inherited Members

Attributes inherited from org.extendj.ast.IntegralType

Attributes inherited from org.extendj.ast.NumericType

Attributes inherited from org.extendj.ast.PrimitiveType

Attributes inherited from org.extendj.ast.TypeDecl

Attributes inherited from org.extendj.ast.ASTNode

Methods inherited from class org.extendj.ast.IntegralType

Methods inherited from class org.extendj.ast.PrimitiveType

Methods inherited from class org.extendj.ast.TypeDecl

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.NumericType

Fields inherited from org.extendj.ast.PrimitiveType

Fields inherited from org.extendj.ast.TypeDecl

Fields inherited from org.extendj.ast.ASTNode

Fields inherited from beaver.Symbol

end
id
start
value