AST
node type Block

General Info

Production
Block : Stmt ::= Stmt*;
Type Hierarchy:
java.lang.Object
  extended by beaver.Symbol
      extended by AST.ASTNode<ASTNode>
          extended by AST.Stmt
              extended by AST.Block
All Implemented Interfaces:
VariableScope, java.lang.Cloneable, java.lang.Iterable<ASTNode>

Description

Source
Declared in Java1.4Frontend/java.ast at line 197

Member Filters

API level:

Aspect:

Constructors

public Block()
 
public Block(List<Stmt> p0)
 

Attributes

syn boolean checkReturnDA(Variable v)
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 300
Aspect
DA
syn boolean isDAafter(Variable v)
Overrides:isDAafter in class Stmt
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 441
Aspect
DA
syn boolean isDUeverywhere(Variable v)
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 447
Aspect
DA
syn boolean checkReturnDU(Variable v)
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 757
Aspect
DU
syn boolean isDUafter(Variable v)
Overrides:isDUafter in class Stmt
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 870
Aspect
DU
syn VariableDeclaration localVariableDeclaration(java.lang.String name)
Source
Declared in Java1.4Frontend/LookupVariable.jrag at line 116
Aspect
VariableScope
syn boolean addsIndentationLevel()
Overrides:addsIndentationLevel in class Stmt
Source
Declared in Java1.4Frontend/PrettyPrint.jadd at line 758
Aspect
PrettyPrint
syn boolean shouldHaveIndent()
Source
Declared in Java1.4Frontend/PrettyPrint.jadd at line 765
Aspect
PrettyPrint
syn boolean canCompleteNormally()
Overrides:canCompleteNormally in class Stmt
Source
Declared in Java1.4Frontend/UnreachableStatements.jrag at line 37
Aspect
UnreachableStatements
Source
Declared in Java1.4Backend/CodeGeneration.jrag at line 43
Aspect
CodeGeneration
syn boolean modifiedInScope(Variable var)
Specified by:modifiedInScope in class Stmt
Source
Declared in Java7Frontend/PreciseRethrow.jrag at line 55
Aspect
PreciseRethrow
inh SimpleSet lookupType(java.lang.String name)
Overrides:lookupType in class Stmt
Source
Declared in Java1.4Frontend/LookupType.jrag at line 263
Aspect
TypeScopePropagation
inh SimpleSet lookupVariable(java.lang.String name)
Specified by:lookupVariable in interface VariableScopeOverrides:lookupVariable in class Stmt
Source
Declared in Java1.4Frontend/LookupVariable.jrag at line 17
Aspect
VariableScope
inh boolean reachable()
Overrides:reachable in class Stmt
Source
Declared in Java1.4Frontend/UnreachableStatements.jrag at line 28
Aspect
UnreachableStatements

Methods

public void flushCache()
Overrides:flushCache in class Stmt
public void flushCollectionCache()
Overrides:flushCollectionCache in class Stmt
public Block clone()
            throws java.lang.CloneNotSupportedException
Overrides:clone in class Stmt
Throws:
java.lang.CloneNotSupportedException
public Block copy()
Overrides:copy in class ASTNode<ASTNode>
public Block fullCopy()
Create a deep copy of the AST subtree at this node. The copy is dangling, i.e. has no parent.
Overrides:fullCopy in class ASTNode<ASTNode>
Returns:
dangling copy of the subtree at this node
public boolean declaredBeforeUse(Variable decl,
                                 ASTNode use)
Source
Declared in Java1.4Frontend/DeclareBeforeUse.jrag at line 21
Aspect
DeclareBeforeUse
public boolean declaredBeforeUse(Variable decl,
                                 int indexUse)
Source
Declared in Java1.4Frontend/DeclareBeforeUse.jrag at line 26
Aspect
DeclareBeforeUse
public void toString(java.lang.StringBuffer s)
Overrides:toString in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/PrettyPrint.jadd at line 526
Aspect
PrettyPrint
public void createBCode(CodeGeneration gen)
Overrides:createBCode in class Stmt
Source
Declared in Java1.4Backend/CreateBCode.jrag at line 1178
Aspect
CreateBCode
public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.
Overrides:init$Children in class Stmt
protected int numChildren()
Overrides:numChildren in class Stmt
public boolean mayHaveRewrite()
Overrides:mayHaveRewrite in class Stmt
public void setStmtList(List<Stmt> list)
Replaces the Stmt list.
Parameters:
list - The new list node to be used as the Stmt list.
public int getNumStmt()
Retrieves the number of children in the Stmt list.
Returns:
Number of children in the Stmt list.
Retrieves the number of children in the Stmt list. Calling this method will not trigger rewrites..
Returns:
Number of children in the Stmt list.
public Stmt getStmt(int i)
Retrieves the element at index i in the Stmt list..
Parameters:
i - Index of the element to return.
Returns:
The element at position i in the Stmt list.
public void addStmt(Stmt node)
Append an element to the Stmt list.
Parameters:
node - The element to append to the Stmt list.
public void addStmtNoTransform(Stmt node)
public void setStmt(Stmt node,
                    int i)
Replaces the Stmt 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.
public List<Stmt> getStmts()
Retrieves the Stmt list.
Returns:
The node representing the Stmt list.
Retrieves the Stmt list.

This method does not invoke AST transformations.

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

This method does not invoke AST transformations.

Returns:
The node representing the Stmt list.
public boolean Define_boolean_isIncOrDec(ASTNode caller,
                                         ASTNode child)
Overrides:Define_boolean_isIncOrDec in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 52
public boolean Define_boolean_isDAbefore(ASTNode caller,
                                         ASTNode child,
                                         Variable v)
Overrides:Define_boolean_isDAbefore in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 444
public boolean Define_boolean_isDUbefore(ASTNode caller,
                                         ASTNode child,
                                         Variable v)
Overrides:Define_boolean_isDUbefore in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 871
public SimpleSet Define_SimpleSet_lookupType(ASTNode caller,
                                             ASTNode child,
                                             java.lang.String name)
Overrides:Define_SimpleSet_lookupType in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/LookupType.jrag at line 380
public SimpleSet Define_SimpleSet_lookupVariable(ASTNode caller,
                                                 ASTNode child,
                                                 java.lang.String name)
Overrides:Define_SimpleSet_lookupVariable in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/LookupVariable.jrag at line 68
Overrides:Define_VariableScope_outerScope in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/NameCheck.jrag at line 296
Overrides:Define_NameType_nameType in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/SyntacticClassification.jrag at line 116
public boolean Define_boolean_reachable(ASTNode caller,
                                        ASTNode child)
Overrides:Define_boolean_reachable in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/UnreachableStatements.jrag at line 38
public boolean Define_boolean_reportUnreachable(ASTNode caller,
                                                ASTNode child)
Overrides:Define_boolean_reportUnreachable in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/UnreachableStatements.jrag at line 148
Overrides:Define_int_variableScopeEndLabel in class ASTNode<ASTNode>
Source
Declared in Java1.4Backend/CodeGeneration.jrag at line 44
public int Define_int_localNum(ASTNode caller,
                               ASTNode child)
Overrides:Define_int_localNum in class ASTNode<ASTNode>
Source
Declared in Java1.4Backend/LocalNum.jrag at line 110
Overrides:rewriteTo in class Stmt

Fields

protected java.util.Map checkReturnDA_Variable_values
protected java.util.Map isDAafter_Variable_values
protected java.util.Map checkReturnDU_Variable_values
protected java.util.Map isDUafter_Variable_values
protected boolean canCompleteNormally_value
protected java.util.Map lookupType_String_values
protected java.util.Map lookupVariable_String_values

Inherited Members

Attributes inherited from AST.Stmt

Attributes inherited from AST.ASTNode

Methods inherited from class AST.Stmt

Methods inherited from class 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

Methods inherited from interface AST.VariableScope

Fields inherited from AST.Stmt

Fields inherited from AST.ASTNode

Fields inherited from beaver.Symbol

end
id
start
value