AST
node type ASTNode<T extends ASTNode>

General Info

Production
ASTNode;
Type Hierarchy:
java.lang.Object
  extended by beaver.Symbol
      extended by AST.ASTNode<T>
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Iterable<T>
Direct Known Subclasses:
Declaration, List, Opt, StateMachine

Description

Member Filters

API level:

Aspect:

Constructors

public ASTNode()

Methods

public ASTNode<T> clone()
                                 throws java.lang.CloneNotSupportedException
Overrides:clone in class java.lang.Object
Throws:
java.lang.CloneNotSupportedException
public ASTNode<T> copy()
public ASTNode<T> fullCopy()
Create a deep copy of the AST subtree at this node. The copy is dangling, i.e. has no parent.
Returns:
dangling copy of the subtree at this node
public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.
public int getIndexOfChild(ASTNode node)
public final ASTNode$State state()
public T getChild(int i)
public void addChild(T node)
public final T getChildNoTransform(int i)

This method does not invoke AST transformations.

protected int numChildren()
public int getNumChild()
public final int getNumChildNoTransform()

This method does not invoke AST transformations.

public void setChild(ASTNode node,
                     int i)
public void insertChild(ASTNode node,
                        int i)
public void removeChild(int i)
public void setParent(ASTNode node)
public int getStartLine()
public short getStartColumn()
public int getEndLine()
public short getEndColumn()
public void setStart(int startLine,
                     short startColumn)
public void setEnd(int endLine,
                   short endColumn)
public java.util.Iterator<T> iterator()
Specified by:iterator in interface java.lang.Iterable<T extends ASTNode>
public void flushCache()
public void flushCollectionCache()
Source
Declared in spec/Exercises.jrag at line 66
Aspect
Source
Declared in spec/Exercises.jrag at line 83
Aspect
protected void contributeTo_StateMachine_StateMachine_errors(java.util.Set<java.lang.String> collection)
Source
Declared in spec/Exercises.jrag at line 48
Aspect
protected void contributeTo_State_State_altSuccessors(java.util.Set<State> collection)
Source
Declared in spec/Exercises.jrag at line 57
Aspect
protected void contributeTo_State_State_predecessors(java.util.Set<State> collection)
Source
Declared in spec/Exercises.jrag at line 102
Aspect
protected void contributeTo_State_State_altReachable(java.util.Set<State> collection)
Source
Declared in spec/Graph.jrag at line 6
Aspect
protected void contributeTo_State_State_transitions(java.util.Set<Transition> collection)
public State Define_State_lookupForward(ASTNode caller,
                                        ASTNode child,
                                        java.lang.String label)
public java.util.Set<Transition> Define_Set_Transition__transitionsOf(ASTNode caller,
                                                                      ASTNode child,
                                                                      State s)
public State Define_State_lookup(ASTNode caller,
                                 ASTNode child,
                                 java.lang.String label)

Fields

public static final boolean generatedWithCircularEnabled
public static final boolean generatedWithCacheCycle
public static final boolean generatedWithComponentCheck
protected ASTNode parent
Parent pointer
protected ASTNode[] children
Child array
protected static ASTNode$State state
protected int numChildren
protected int startLine
Line and column information.
protected short startColumn
protected int endLine
protected short endColumn

Inherited Members

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
toString
wait
wait
wait

Fields inherited from beaver.Symbol

end
id
start
value