soot.baf.internal
Class BTableSwitchInst
java.lang.Object
soot.tagkit.AbstractHost
soot.AbstractUnit
soot.baf.internal.AbstractInst
soot.baf.internal.BTableSwitchInst
- All Implemented Interfaces:
- Serializable, Inst, TableSwitchInst, Context, Host, Unit, Switchable
public class BTableSwitchInst
- extends AbstractInst
- implements TableSwitchInst
- See Also:
- Serialized Form
BTableSwitchInst
public BTableSwitchInst(Unit defaultTarget,
int lowIndex,
int highIndex,
List targets)
clone
public Object clone()
- Description copied from class:
AbstractUnit
- Returns a deep clone of this object.
- Specified by:
clone
in interface Unit
- Overrides:
clone
in class AbstractInst
getInCount
public int getInCount()
- Specified by:
getInCount
in interface Inst
- Overrides:
getInCount
in class AbstractInst
getInMachineCount
public int getInMachineCount()
- Specified by:
getInMachineCount
in interface Inst
- Overrides:
getInMachineCount
in class AbstractInst
getOutCount
public int getOutCount()
- Specified by:
getOutCount
in interface Inst
- Overrides:
getOutCount
in class AbstractInst
getOutMachineCount
public int getOutMachineCount()
- Specified by:
getOutMachineCount
in interface Inst
- Overrides:
getOutMachineCount
in class AbstractInst
getDefaultTarget
public Unit getDefaultTarget()
- Specified by:
getDefaultTarget
in interface TableSwitchInst
setDefaultTarget
public void setDefaultTarget(Unit defaultTarget)
- Specified by:
setDefaultTarget
in interface TableSwitchInst
getDefaultTargetBox
public UnitBox getDefaultTargetBox()
- Specified by:
getDefaultTargetBox
in interface TableSwitchInst
setLowIndex
public void setLowIndex(int lowIndex)
- Specified by:
setLowIndex
in interface TableSwitchInst
setHighIndex
public void setHighIndex(int highIndex)
- Specified by:
setHighIndex
in interface TableSwitchInst
getLowIndex
public int getLowIndex()
- Specified by:
getLowIndex
in interface TableSwitchInst
getHighIndex
public int getHighIndex()
- Specified by:
getHighIndex
in interface TableSwitchInst
getTargetCount
public int getTargetCount()
getTarget
public Unit getTarget(int index)
- Specified by:
getTarget
in interface TableSwitchInst
setTarget
public void setTarget(int index,
Unit target)
- Specified by:
setTarget
in interface TableSwitchInst
setTargets
public void setTargets(List<Unit> targets)
- Specified by:
setTargets
in interface TableSwitchInst
getTargetBox
public UnitBox getTargetBox(int index)
- Specified by:
getTargetBox
in interface TableSwitchInst
getTargets
public List getTargets()
- Specified by:
getTargets
in interface TableSwitchInst
getName
public String getName()
- Specified by:
getName
in class AbstractInst
toString
public String toString()
- Overrides:
toString
in class AbstractInst
toString
public void toString(UnitPrinter up)
- Specified by:
toString
in interface Unit
- Overrides:
toString
in class AbstractInst
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
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
- Overrides:
fallsThrough
in class AbstractInst
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
- Overrides:
branches
in class AbstractInst