soot.jimple.internal
Class JIfStmt
java.lang.Object
soot.tagkit.AbstractHost
soot.AbstractUnit
soot.jimple.internal.AbstractStmt
soot.jimple.internal.JIfStmt
- All Implemented Interfaces:
- Serializable, Context, ConvertToBaf, IfStmt, Stmt, Host, Unit, Switchable
- Direct Known Subclasses:
- GIfStmt
public class JIfStmt
- extends AbstractStmt
- implements IfStmt
- See Also:
- Serialized Form
JIfStmt
public JIfStmt(Value condition,
Unit target)
JIfStmt
public JIfStmt(Value condition,
UnitBox target)
JIfStmt
protected JIfStmt(ValueBox conditionBox,
UnitBox targetBox)
clone
public Object clone()
- Description copied from class:
AbstractUnit
- Returns a deep clone of this object.
- Specified by:
clone
in interface Unit
- Specified by:
clone
in class AbstractUnit
toString
public String toString()
- Overrides:
toString
in class Object
toString
public void toString(UnitPrinter up)
- Specified by:
toString
in interface Stmt
- Specified by:
toString
in interface Unit
getCondition
public Value getCondition()
- Specified by:
getCondition
in interface IfStmt
setCondition
public void setCondition(Value condition)
- Description copied from interface:
IfStmt
- condition must be soot.jimple.ConditionExpr
- Specified by:
setCondition
in interface IfStmt
getConditionBox
public ValueBox getConditionBox()
- Specified by:
getConditionBox
in interface IfStmt
getTarget
public Stmt getTarget()
- Specified by:
getTarget
in interface IfStmt
setTarget
public void setTarget(Unit target)
- Specified by:
setTarget
in interface IfStmt
getTargetBox
public UnitBox getTargetBox()
- Specified by:
getTargetBox
in interface IfStmt
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
getUnitBoxes
public List getUnitBoxes()
- Description copied from class:
AbstractUnit
- Returns a list of Boxes containing Units defined in this Unit; typically
branch targets.
The list of boxes is dynamically updated as the structure changes.
- Specified by:
getUnitBoxes
in interface Unit
- Overrides:
getUnitBoxes
in class AbstractUnit
apply
public void apply(Switch sw)
- Description copied from class:
AbstractUnit
- Used to implement the Switchable construct.
- Specified by:
apply
in interface Switchable
- Overrides:
apply
in class AbstractUnit
convertToBaf
public void convertToBaf(JimpleToBafContext context,
List<Unit> out)
- Specified by:
convertToBaf
in interface ConvertToBaf
- Overrides:
convertToBaf
in class AbstractStmt
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