soot.jimple.internal
Class AbstractDefinitionStmt

java.lang.Object
  extended by soot.tagkit.AbstractHost
      extended by soot.AbstractUnit
          extended by soot.jimple.internal.AbstractStmt
              extended by soot.jimple.internal.AbstractDefinitionStmt
All Implemented Interfaces:
Serializable, Context, ConvertToBaf, DefinitionStmt, Stmt, Host, Unit, Switchable
Direct Known Subclasses:
DAssignStmt, JAssignStmt, JIdentityStmt

public abstract class AbstractDefinitionStmt
extends AbstractStmt
implements DefinitionStmt

See Also:
Serialized Form

Field Summary
 ValueBox leftBox
           
 ValueBox rightBox
           
 
Fields inherited from class soot.AbstractUnit
emptyList
 
Constructor Summary
AbstractDefinitionStmt()
           
 
Method Summary
 boolean branches()
          Returns true if execution after this statement does not necessarily continue at the following statement.
 boolean fallsThrough()
          Returns true if execution after this statement may continue at the following statement.
 List getDefBoxes()
          Returns a list of Boxes containing Values defined in this Unit.
 Value getLeftOp()
           
 ValueBox getLeftOpBox()
           
 Value getRightOp()
           
 ValueBox getRightOpBox()
           
 List getUseBoxes()
          Returns a list of Boxes containing Values used in this Unit.
 
Methods inherited from class soot.jimple.internal.AbstractStmt
containsArrayRef, containsFieldRef, containsInvokeExpr, convertToBaf, getArrayRef, getArrayRefBox, getFieldRef, getFieldRefBox, getInvokeExpr, getInvokeExprBox
 
Methods inherited from class soot.AbstractUnit
addBoxPointingToThis, apply, clearUnitBoxes, clone, getBoxesPointingToThis, getUnitBoxes, getUseAndDefBoxes, redirectJumpsToThisTo, removeBoxPointingToThis
 
Methods inherited from class soot.tagkit.AbstractHost
addAllTagsOf, addTag, getTag, getTags, hasTag, removeAllTags, removeTag
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface soot.jimple.Stmt
containsArrayRef, containsFieldRef, containsInvokeExpr, getArrayRef, getArrayRefBox, getFieldRef, getFieldRefBox, getInvokeExpr, getInvokeExprBox, toString
 
Methods inherited from interface soot.Unit
addBoxPointingToThis, clearUnitBoxes, clone, getBoxesPointingToThis, getUnitBoxes, getUseAndDefBoxes, redirectJumpsToThisTo, removeBoxPointingToThis
 
Methods inherited from interface soot.util.Switchable
apply
 
Methods inherited from interface soot.tagkit.Host
addAllTagsOf, addTag, getTag, getTags, hasTag, removeAllTags, removeTag
 

Field Detail

leftBox

public ValueBox leftBox

rightBox

public ValueBox rightBox
Constructor Detail

AbstractDefinitionStmt

public AbstractDefinitionStmt()
Method Detail

getLeftOp

public Value getLeftOp()
Specified by:
getLeftOp in interface DefinitionStmt

getRightOp

public Value getRightOp()
Specified by:
getRightOp in interface DefinitionStmt

getLeftOpBox

public ValueBox getLeftOpBox()
Specified by:
getLeftOpBox in interface DefinitionStmt

getRightOpBox

public ValueBox getRightOpBox()
Specified by:
getRightOpBox in interface DefinitionStmt

getDefBoxes

public List getDefBoxes()
Description copied from class: AbstractUnit
Returns a list of Boxes containing Values defined in this Unit. The list of boxes is dynamically updated as the structure changes.

Specified by:
getDefBoxes in interface Unit
Overrides:
getDefBoxes in class AbstractUnit

getUseBoxes

public List getUseBoxes()
Description copied from class: AbstractUnit
Returns a list of Boxes containing Values used in this Unit. The list of boxes is dynamically updated as the structure changes. Note that they are returned in usual evaluation order. (this is important for aggregation)

Specified by:
getUseBoxes in interface Unit
Overrides:
getUseBoxes in class AbstractUnit

fallsThrough

public boolean fallsThrough()
Description copied from interface: Unit
Returns true if execution after this statement may continue at the following statement. GotoStmt will return false but IfStmt will return true.

Specified by:
fallsThrough in interface Unit

branches

public boolean branches()
Description copied from interface: Unit
Returns true if execution after this statement does not necessarily continue at the following statement. GotoStmt and IfStmt will both return true.

Specified by:
branches in interface Unit