org.extendj.ast
node type FieldDecl

General Info

Production
FieldDecl : MemberDecl ::= Modifiers TypeAccess:Access VariableDecl*;
Type Hierarchy:
java.lang.Object
  extended by beaver.Symbol
      extended by org.extendj.ast.ASTNode<ASTNode>
          extended by org.extendj.ast.BodyDecl
              extended by org.extendj.ast.MemberDecl
                  extended by org.extendj.ast.FieldDecl
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Iterable<ASTNode>, org.jastadd.util.PrettyPrintable

Description

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

Member Filters

API level:

Aspect:

Constructors

public FieldDecl()
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 1
public FieldDecl(Modifiers p0,
                 Access p1,
                 List<VariableDecl> p2)
 
Source
Declared in /home/jesper/git/extendj/ASTNode at line 14

Attributes

Specified by:isStatic in class MemberDecl
Source
Declared in /home/jesper/git/extendj/java4/frontend/Modifiers.jrag at line 284
Aspect
Modifiers

Methods

public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.
Overrides:init$Children in class MemberDecl
Source
Declared in /home/jesper/git/extendj/ASTNode at line 10
protected int numChildren()
Overrides:numChildren in class MemberDecl
Source
Declared in /home/jesper/git/extendj/ASTNode at line 22
public boolean mayHaveRewrite()
Overrides:mayHaveRewrite in class MemberDecl
Source
Declared in /home/jesper/git/extendj/ASTNode at line 28
public void flushAttrCache()
Overrides:flushAttrCache in class MemberDecl
Source
Declared in /home/jesper/git/extendj/ASTNode at line 34
public void flushCollectionCache()
Overrides:flushCollectionCache in class MemberDecl
Source
Declared in /home/jesper/git/extendj/ASTNode at line 40
public void flushRewriteCache()
Overrides:flushRewriteCache in class MemberDecl
Source
Declared in /home/jesper/git/extendj/ASTNode at line 46
public FieldDecl clone()
                throws java.lang.CloneNotSupportedException
Overrides:clone in class MemberDecl
Throws:
java.lang.CloneNotSupportedException
Source
Declared in /home/jesper/git/extendj/ASTNode at line 52
public FieldDecl copy()
Overrides:copy in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/ASTNode at line 59
@Deprecated
public FieldDecl 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 MemberDecl
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 78
public FieldDecl 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 MemberDecl
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 88
public FieldDecl 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 MemberDecl
Returns:
dangling copy of the subtree at this node
Source
Declared in /home/jesper/git/extendj/ASTNode at line 108
protected boolean is$Equal(ASTNode node)
Overrides:is$Equal in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/ASTNode at line 115
public void setModifiers(Modifiers node)
Replaces the Modifiers child.
Parameters:
node - The new node to replace the Modifiers child.
Retrieves the Modifiers child.
Returns:
The current node used as the Modifiers child.
Retrieves the Modifiers child.

This method does not invoke AST transformations.

Returns:
The current node used as the Modifiers child.
public void setTypeAccess(Access node)
Replaces the TypeAccess child.
Parameters:
node - The new node to replace the TypeAccess child.
Retrieves the TypeAccess child.
Returns:
The current node used as the TypeAccess child.
Retrieves the TypeAccess child.

This method does not invoke AST transformations.

Returns:
The current node used as the TypeAccess child.
Replaces the VariableDecl list.
Parameters:
list - The new list node to be used as the VariableDecl list.
public int getNumVariableDecl()
Retrieves the number of children in the VariableDecl list.
Returns:
Number of children in the VariableDecl list.
Retrieves the number of children in the VariableDecl list. Calling this method will not trigger rewrites.
Returns:
Number of children in the VariableDecl list.
Retrieves the element at index i in the VariableDecl list.
Parameters:
i - Index of the element to return.
Returns:
The element at position i in the VariableDecl list.
public boolean hasVariableDecl()
Check whether the VariableDecl list has any children.
Returns:
true if it has at least one child, false otherwise.
public void addVariableDecl(VariableDecl node)
Append an element to the VariableDecl list.
Parameters:
node - The element to append to the VariableDecl list.
public void setVariableDecl(VariableDecl node,
                            int i)
Replaces the VariableDecl list element at index i with the new node node.
Parameters:
node - The new node to replace the old list element.
i - The list index of the node to be replaced.
Retrieves the VariableDecl list.
Returns:
The node representing the VariableDecl list.
Retrieves the VariableDecl list.

This method does not invoke AST transformations.

Returns:
The node representing the VariableDecl list.
Retrieves the VariableDecl list.
Returns:
The node representing the VariableDecl list.
Retrieves the VariableDecl list.

This method does not invoke AST transformations.

Returns:
The node representing the VariableDecl list.
public org.extendj.ast.NameType Define_nameType(ASTNode caller,
                                                ASTNode child)
Overrides:Define_nameType in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java4/frontend/SyntacticClassification.jrag at line 36
protected boolean canDefine_nameType(ASTNode caller,
                                     ASTNode child)
public TypeDecl Define_declType(ASTNode caller,
                                ASTNode child)
Overrides:Define_declType in class ASTNode<ASTNode>
Source
Declared in /home/jesper/git/extendj/java5/frontend/Annotations.jrag at line 601
protected boolean canDefine_declType(ASTNode caller,
                                     ASTNode child)
Overrides:rewriteTo in class MemberDecl

Inherited Members

Attributes inherited from org.extendj.ast.MemberDecl

Attributes inherited from org.extendj.ast.BodyDecl

Attributes inherited from org.extendj.ast.ASTNode

Methods inherited from class org.extendj.ast.MemberDecl

Methods inherited from class org.extendj.ast.BodyDecl

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

Fields inherited from org.extendj.ast.ASTNode

Fields inherited from beaver.Symbol

end
id
start
value