org.extendj.ast
node type IntegralType

General Info

Production
IntegralType : NumericType;
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
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Iterable<ASTNode>, java.util.Iterator, org.jastadd.util.PrettyPrintable
Direct Known Subclasses:
ByteType, CharType, IntType, LongType, ShortType
static class SimpleSet.SimpleSetImpl
           

Description

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

Member Filters

API level:

Aspect:

Constructors

public IntegralType()
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 1
public IntegralType(Modifiers p0,
                    java.lang.String p1,
                    Opt<Access> p2,
                    List<BodyDecl> p3)
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 15
public IntegralType(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 TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 72
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant plus(org.extendj.ast.Constant c)
Overrides:plus in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 86
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant minus(org.extendj.ast.Constant c)
Overrides:minus in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 95
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant bitNot(org.extendj.ast.Constant c)
Overrides:bitNot in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 104
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant mul(org.extendj.ast.Constant c1,
                                                         org.extendj.ast.Constant c2)
Overrides:mul in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 111
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant div(org.extendj.ast.Constant c1,
                                                         org.extendj.ast.Constant c2)
Overrides:div in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 120
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant mod(org.extendj.ast.Constant c1,
                                                         org.extendj.ast.Constant c2)
Overrides:mod in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 129
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant add(org.extendj.ast.Constant c1,
                                                         org.extendj.ast.Constant c2)
Overrides:add in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 138
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant sub(org.extendj.ast.Constant c1,
                                                         org.extendj.ast.Constant c2)
Overrides:sub in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 148
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant lshift(org.extendj.ast.Constant c1,
                                                            org.extendj.ast.Constant c2)
Overrides:lshift in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 157
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant rshift(org.extendj.ast.Constant c1,
                                                            org.extendj.ast.Constant c2)
Overrides:rshift in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 164
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant urshift(org.extendj.ast.Constant c1,
                                                             org.extendj.ast.Constant c2)
Overrides:urshift in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 171
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant andBitwise(org.extendj.ast.Constant c1,
                                                                org.extendj.ast.Constant c2)
Overrides:andBitwise in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 178
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant xorBitwise(org.extendj.ast.Constant c1,
                                                                org.extendj.ast.Constant c2)
Overrides:xorBitwise in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 186
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant orBitwise(org.extendj.ast.Constant c1,
                                                               org.extendj.ast.Constant c2)
Overrides:orBitwise in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 194
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn org.extendj.ast.Constant questionColon(org.extendj.ast.Constant cond,
                                                                   org.extendj.ast.Constant c1,
                                                                   org.extendj.ast.Constant c2)
Overrides:questionColon in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 202
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn boolean eqIsTrue(Expr left,
                                             Expr right)
Overrides:eqIsTrue in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 326
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn boolean ltIsTrue(Expr left,
                                             Expr right)
Overrides:ltIsTrue in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 337
Aspect
ConstantExpression
@ASTNodeAnnotation.Attribute
syn boolean leIsTrue(Expr left,
                                             Expr right)
Overrides:leIsTrue in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/ConstantExpression.jrag at line 343
Aspect
ConstantExpression
Overrides:assignableToInt in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/NameCheck.jrag at line 508
Aspect
NameCheck
Overrides:isIntegralType in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/TypeAnalysis.jrag at line 199
Aspect
TypeAnalysis

Methods

public int addConstant(ConstantPool p,
                       org.extendj.ast.Constant c)
Overrides:addConstant in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/backend/Attributes.jrag at line 87
Aspect
Attributes
public void emitPushConstant(org.extendj.ast.CodeGeneration gen,
                             int value)
Overrides:emitPushConstant in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/backend/CodeGeneration.jrag at line 170
Aspect
CodeGeneration
public void branchLT(org.extendj.ast.CodeGeneration gen,
                     int label)
Overrides:branchLT in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/backend/CodeGeneration.jrag at line 751
Aspect
CodeGenerationBranch
public void branchLE(org.extendj.ast.CodeGeneration gen,
                     int label)
Overrides:branchLE in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/backend/CodeGeneration.jrag at line 761
Aspect
CodeGenerationBranch
public void branchGE(org.extendj.ast.CodeGeneration gen,
                     int label)
Overrides:branchGE in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/backend/CodeGeneration.jrag at line 771
Aspect
CodeGenerationBranch
public void branchGT(org.extendj.ast.CodeGeneration gen,
                     int label)
Overrides:branchGT in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/backend/CodeGeneration.jrag at line 781
Aspect
CodeGenerationBranch
public void branchEQ(org.extendj.ast.CodeGeneration gen,
                     int label)
Overrides:branchEQ in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/backend/CodeGeneration.jrag at line 791
Aspect
CodeGenerationBranch
public void branchNE(org.extendj.ast.CodeGeneration gen,
                     int label)
Overrides:branchNE in class TypeDecl
Source
Declared in /home/jesper/git/extendj/java4/backend/CodeGeneration.jrag at line 800
Aspect
CodeGenerationBranch
public int addAnnotConstant(ConstantPool p,
                            org.extendj.ast.Constant c)
Description copied from class: TypeDeclAdd an annotation parameter constant to the constant pool.
Overrides:addAnnotConstant in class TypeDecl
See Also:
TypeDecl.addConstant(ConstantPool, Constant)
Source
Declared in /home/jesper/git/extendj/java5/backend/AnnotationsCodegen.jrag at line 217
Aspect
AnnotationsCodegen
public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.
Overrides:init$Children in class NumericType
Source
Declared in /home/jesper/git/extendj/ASTNode at line 10
protected int numChildren()
Overrides:numChildren in class NumericType
Source
Declared in /home/jesper/git/extendj/ASTNode at line 30
public boolean mayHaveRewrite()
Overrides:mayHaveRewrite in class NumericType
Source
Declared in /home/jesper/git/extendj/ASTNode at line 36
public void flushAttrCache()
Overrides:flushAttrCache in class NumericType
Source
Declared in /home/jesper/git/extendj/ASTNode at line 42
public void flushCollectionCache()
Overrides:flushCollectionCache in class NumericType
Source
Declared in /home/jesper/git/extendj/ASTNode at line 48
public void flushRewriteCache()
Overrides:flushRewriteCache in class NumericType
Source
Declared in /home/jesper/git/extendj/ASTNode at line 54
public IntegralType clone()
                   throws java.lang.CloneNotSupportedException
Overrides:clone in class NumericType
Throws:
java.lang.CloneNotSupportedException
Source
Declared in /home/jesper/git/extendj/ASTNode at line 60
@Deprecated
public abstract IntegralType 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 NumericType
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 71
public abstract IntegralType 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 NumericType
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 79
public abstract IntegralType 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 NumericType
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 87
public void setModifiers(Modifiers node)
Replaces the Modifiers child.
Overrides:setModifiers in class NumericType
Parameters:
node - The new node to replace the Modifiers child.
Retrieves the Modifiers child.
Overrides:getModifiers in class NumericType
Returns:
The current node used as the Modifiers child.
Retrieves the Modifiers child.

This method does not invoke AST transformations.

Overrides:getModifiersNoTransform in class NumericType
Returns:
The current node used as the Modifiers child.
public void setID(java.lang.String value)
Replaces the lexeme ID.
Overrides:setID in class NumericType
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 NumericType
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 NumericType
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 NumericType
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 NumericType
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 NumericType
Returns:
true if the optional SuperClass child exists, false if it does not.
Retrieves the (optional) SuperClass child.
Overrides:getSuperClass in class NumericType
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 NumericType
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 NumericType
Returns:
The optional node for child SuperClass.
public void setBodyDeclList(List<BodyDecl> list)
Replaces the BodyDecl list.
Overrides:setBodyDeclList in class NumericType
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 NumericType
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 NumericType
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 NumericType
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 NumericType
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 NumericType
Parameters:
node - The element to append to the BodyDecl list.
public void addBodyDeclNoTransform(BodyDecl node)
Overrides:addBodyDeclNoTransform in class NumericType
public void setBodyDecl(BodyDecl node,
                        int i)
Replaces the BodyDecl list element at index i with the new node node.
Overrides:setBodyDecl in class NumericType
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 NumericType
Returns:
The node representing the BodyDecl list.
Retrieves the BodyDecl list.

This method does not invoke AST transformations.

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

This method does not invoke AST transformations.

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

Fields

public static final org.extendj.ast.SimpleSet emptySet
public static final org.extendj.ast.SimpleSet fullSet

Inherited Members

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