AST
node type AssertStmt

General Info

Production
AssertStmt : Stmt ::= first:Expr [Expr];
Type Hierarchy:
java.lang.Object
  extended by beaver.Symbol
      extended by AST.ASTNode<ASTNode>
          extended by AST.Stmt
              extended by AST.AssertStmt
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Iterable<ASTNode>

Description

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

Member Filters

API level:

Aspect:

Constructors

public AssertStmt()
 
public AssertStmt(Expr p0,
                  Opt<Expr> p1)
 

Attributes

syn boolean isDAafter(Variable v)
Overrides:isDAafter in class Stmt
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 418
Aspect
DA
syn boolean isDUafter(Variable v)
Overrides:isDUafter in class Stmt
Source
Declared in Java1.4Frontend/DefiniteAssignment.jrag at line 866
Aspect
DU
syn boolean modifiedInScope(Variable var)
Specified by:modifiedInScope in class Stmt
Source
Declared in Java7Frontend/PreciseRethrow.jrag at line 55
Aspect
PreciseRethrow

Methods

public void flushCache()
Overrides:flushCache in class Stmt
public void flushCollectionCache()
Overrides:flushCollectionCache in class Stmt
public AssertStmt clone()
                 throws java.lang.CloneNotSupportedException
Overrides:clone in class Stmt
Throws:
java.lang.CloneNotSupportedException
public AssertStmt copy()
Overrides:copy in class ASTNode<ASTNode>
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 void toString(java.lang.StringBuffer s)
Overrides:toString in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/PrettyPrint.jadd at line 729
Aspect
PrettyPrint
public void typeCheck()
Overrides:typeCheck in class ASTNode<ASTNode>
Source
Declared in Java1.4Frontend/TypeCheck.jrag at line 378
Aspect
TypeCheck
public void createBCode(CodeGeneration gen)
Assert statement bytecode is generated through the transformed version of the assert statement!
Overrides:createBCode in class Stmt
See Also:
Java1.4Backend/Transformations.jrag
Source
Declared in Java1.4Backend/CreateBCode.jrag at line 1564
Aspect
CreateBCode
public void transformation()
Overrides:transformation in class ASTNode<ASTNode>
Source
Declared in Java1.4Backend/Transformations.jrag at line 170
Aspect
Transformations
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 setfirst(Expr node)
Replaces the first child.
Parameters:
node - The new node to replace the first child.
public Expr getfirst()
Retrieves the first child.
Returns:
The current node used as the first child.
Retrieves the first child.

This method does not invoke AST transformations.

Returns:
The current node used as the first child.
public void setExprOpt(Opt<Expr> opt)
Replaces the optional node for the Expr child. This is the Opt node containing the child Expr, not the actual child!
Parameters:
opt - The new node to be used as the optional node for the Expr child.
public boolean hasExpr()
Check whether the optional Expr child exists.
Returns:
true if the optional Expr child exists, false if it does not.
public Expr getExpr()
Retrieves the (optional) Expr child.
Returns:
The Expr child, if it exists. Returns null otherwise.
public void setExpr(Expr node)
Replaces the (optional) Expr child.
Parameters:
node - The new node to be used as the Expr child.
public Opt<Expr> getExprOpt()
Retrieves the optional node for child Expr. This is the Opt node containing the child Expr, not the actual child!

This method does not invoke AST transformations.

Returns:
The optional node for child Expr.
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 419
Overrides:rewriteTo in class Stmt

Fields

protected java.util.Map isDAafter_Variable_values
protected java.util.Map isDUafter_Variable_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

Fields inherited from AST.Stmt

Fields inherited from AST.ASTNode

Fields inherited from beaver.Symbol

end
id
start
value