Main Page   Packages   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

FGStmt Class Reference

Inheritance diagram for FGStmt:
[legend]
Collaboration diagram for FGStmt:
[legend]
List of all members.

Public Methods

 FGStmt (MethodVariant methodVariant, Map astNodes)
void build (Stmt s)
void caseAssignStmt (AssignStmt s)
void caseEnterMonitorStmt (EnterMonitorStmt s)
void caseExitMonitorStmt (ExitMonitorStmt s)
void caseIdentityStmt (IdentityStmt s)
void caseIfStmt (IfStmt s)
void caseInvokeStmt (InvokeStmt s)
void caseReturnStmt (ReturnStmt s)
void caseThrowStmt (ThrowStmt s)
void defaultCase (Object obj)
FGNodeAST getLHSNode (Value v)

Private Attributes

MethodVariant methodVariant
SootMethod sootMethod
Map astNodes
FGExpr fgExpr
Stmt stmt
TempAbstJmplValSwitch sw

Static Private Attributes

Category cat

Detailed Description

The class in which the statements of a method are processed to extend the FlowGraph for the MethodVariant.

Author:
John Hatcliff , Venkatesh Prasad Ranganath
Version:
Name:
(
Revision:
1.1.1.1
)

Definition at line 51 of file FGStmt.java.


Constructor & Destructor Documentation

FGStmt::FGStmt MethodVariant   methodVariant,
Map   astNodes
[inline]
 

Constructor of the class.

Parameters:
methodVariant   the method whose statements needs to be processed.
astNodes   the map of AST nodes for the given method.

Definition at line 203 of file FGStmt.java.


Member Function Documentation

void FGStmt::build Stmt   s [inline]
 

Starts the extension of flow graph for the given statement.

Parameters:
s   the statement for which the FG needs to be created.

Definition at line 216 of file FGStmt.java.

Referenced by MethodVariant::MethodVariant().

void FGStmt::caseAssignStmt AssignStmt   s [inline]
 

Extends the part of flow graph for assignment statement.

Parameters:
s   the object representing an assignment statement.

Definition at line 226 of file FGStmt.java.

void FGStmt::caseEnterMonitorStmt EnterMonitorStmt   s [inline]
 

Extends the part of flow graph for the entermonitor statement. We just process the expression.

Parameters:
s   the object representing the entermonitor statement.

Definition at line 245 of file FGStmt.java.

void FGStmt::caseExitMonitorStmt ExitMonitorStmt   s [inline]
 

Extends the part of flow graph for the exitmonitor statement. We just process the expression.

Parameters:
s   the object representing the exitmonitor statement.

Definition at line 255 of file FGStmt.java.

void FGStmt::caseIdentityStmt IdentityStmt   s [inline]
 

Extends the part of flow graph for identity statement.

Parameters:
s   the object representing an identity statement.

Definition at line 264 of file FGStmt.java.

void FGStmt::caseIfStmt IfStmt   s [inline]
 

Extends the part of flow graph for if statement. We just process the boolean expression.

Parameters:
s   the object representing the if statement.

Definition at line 303 of file FGStmt.java.

void FGStmt::caseInvokeStmt InvokeStmt   s [inline]
 

Extends the part of flow graph for invoke statement.

Parameters:
s   the object representing the invocation statement.

Definition at line 318 of file FGStmt.java.

void FGStmt::caseReturnStmt ReturnStmt   s [inline]
 

Extends the part of flow graph for return statement.

Parameters:
s   the object representing the return statment.

Definition at line 327 of file FGStmt.java.

void FGStmt::caseThrowStmt ThrowStmt   s [inline]
 

Extends the part of flow graph for the throw statement. We just process the expression.

Parameters:
s   the object representing the throw statement.

Definition at line 342 of file FGStmt.java.

void FGStmt::defaultCase Object   obj [inline]
 

Raise an exception for all unhandled statement form.

Parameters:
obj   the object representing the statement.

Definition at line 351 of file FGStmt.java.

FGNodeAST FGStmt::getLHSNode Value   v [inline]
 

Extends the part of flow graph node for LHS expressions.

Parameters:
v   the object representing the LHS expression.
Returns:
the flow node corresponding to the given LHS expression.

Definition at line 361 of file FGStmt.java.


Member Data Documentation

Map FGStmt::astNodes [private]
 

Maps the AST nodes occuring in the method to flow graph nodes.

Definition at line 67 of file FGStmt.java.

Category FGStmt::cat [static, private]
 

Provides logging capability through log4j.

Definition at line 90 of file FGStmt.java.

FGExpr FGStmt::fgExpr [private]
 

The FGExpr object which will process the expressions that occur in the statement that will be processed.

Definition at line 73 of file FGStmt.java.

MethodVariant FGStmt::methodVariant [private]
 

The method variant for which the flow graph needs to be extended.

Definition at line 57 of file FGStmt.java.

SootMethod FGStmt::sootMethod [private]
 

The method associated with the method variant.

Definition at line 62 of file FGStmt.java.

Stmt FGStmt::stmt [private]
 

The current statement in the method being processed.

Definition at line 78 of file FGStmt.java.

TempAbstJmplValSwitch FGStmt::sw [private]
 

The object used to process LHS expressions.

Definition at line 84 of file FGStmt.java.


The documentation for this class was generated from the following file:
Generated at Thu Feb 7 07:11:08 2002 for Bandera by doxygen1.2.10 written by Dimitri van Heesch, © 1997-2001