Package soot.baf.internal
Class AbstractSwitchInst
- java.lang.Object
-
- soot.tagkit.AbstractHost
-
- soot.AbstractUnit
-
- soot.baf.internal.AbstractInst
-
- soot.baf.internal.AbstractSwitchInst
-
- All Implemented Interfaces:
Serializable,Inst,SwitchInst,Context,Host,Unit,Switchable
- Direct Known Subclasses:
BLookupSwitchInst,BTableSwitchInst
public abstract class AbstractSwitchInst extends AbstractInst implements SwitchInst
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class soot.AbstractUnit
boxesPointingToThis
-
Fields inherited from class soot.tagkit.AbstractHost
col, line, mTagList
-
-
Constructor Summary
Constructors Constructor Description AbstractSwitchInst(Unit defaultTarget, List<? extends Unit> targets)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanbranches()Returns true if execution after this statement does not necessarily continue at the following statement.booleanfallsThrough()Returns true if execution after this statement may continue at the following statement.UnitgetDefaultTarget()UnitBoxgetDefaultTargetBox()intgetInCount()intgetInMachineCount()intgetOutCount()intgetOutMachineCount()UnitgetTarget(int index)UnitBoxgetTargetBox(int index)intgetTargetCount()List<Unit>getTargets()List<UnitBox>getUnitBoxes()Returns a list of Boxes containing Units defined in this Unit; typically branch targets.voidsetDefaultTarget(Unit defaultTarget)voidsetTarget(int index, Unit target)voidsetTargets(List<Unit> targets)-
Methods inherited from class soot.baf.internal.AbstractInst
clone, containsArrayRef, containsFieldRef, containsInvokeExpr, containsNewExpr, getName, getNetCount, getNetMachineCount, getParameters, toString, toString
-
Methods inherited from class soot.AbstractUnit
addBoxPointingToThis, apply, clearUnitBoxes, getBoxesPointingToThis, getDefBoxes, getUseAndDefBoxes, getUseBoxes, redirectJumpsToThisTo, removeBoxPointingToThis
-
Methods inherited from class soot.tagkit.AbstractHost
addAllTagsOf, addTag, getJavaSourceStartColumnNumber, getJavaSourceStartLineNumber, getTag, getTags, hasTag, removeAllTags, removeTag
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface soot.tagkit.Host
addAllTagsOf, addTag, getJavaSourceStartColumnNumber, getJavaSourceStartLineNumber, getTag, getTags, hasTag, removeAllTags, removeTag
-
Methods inherited from interface soot.baf.Inst
containsArrayRef, containsFieldRef, containsInvokeExpr, containsNewExpr, getNetCount, getNetMachineCount
-
Methods inherited from interface soot.util.Switchable
apply
-
Methods inherited from interface soot.Unit
addBoxPointingToThis, clearUnitBoxes, clone, getBoxesPointingToThis, getDefBoxes, getUseAndDefBoxes, getUseBoxes, redirectJumpsToThisTo, removeBoxPointingToThis, toString
-
-
-
-
Method Detail
-
getInCount
public int getInCount()
- Specified by:
getInCountin interfaceInst- Overrides:
getInCountin classAbstractInst
-
getInMachineCount
public int getInMachineCount()
- Specified by:
getInMachineCountin interfaceInst- Overrides:
getInMachineCountin classAbstractInst
-
getOutCount
public int getOutCount()
- Specified by:
getOutCountin interfaceInst- Overrides:
getOutCountin classAbstractInst
-
getOutMachineCount
public int getOutMachineCount()
- Specified by:
getOutMachineCountin interfaceInst- Overrides:
getOutMachineCountin classAbstractInst
-
getUnitBoxes
public List<UnitBox> getUnitBoxes()
Description copied from class:AbstractUnitReturns 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:
getUnitBoxesin interfaceUnit- Overrides:
getUnitBoxesin classAbstractUnit
-
fallsThrough
public boolean fallsThrough()
Description copied from interface:UnitReturns true if execution after this statement may continue at the following statement. GotoStmt will return false but IfStmt will return true.- Specified by:
fallsThroughin interfaceUnit- Overrides:
fallsThroughin classAbstractInst
-
branches
public boolean branches()
Description copied from interface:UnitReturns true if execution after this statement does not necessarily continue at the following statement. GotoStmt and IfStmt will both return true.- Specified by:
branchesin interfaceUnit- Overrides:
branchesin classAbstractInst
-
getDefaultTarget
public Unit getDefaultTarget()
- Specified by:
getDefaultTargetin interfaceSwitchInst
-
setDefaultTarget
public void setDefaultTarget(Unit defaultTarget)
- Specified by:
setDefaultTargetin interfaceSwitchInst
-
getDefaultTargetBox
public UnitBox getDefaultTargetBox()
- Specified by:
getDefaultTargetBoxin interfaceSwitchInst
-
getTargetCount
public int getTargetCount()
- Specified by:
getTargetCountin interfaceSwitchInst
-
getTarget
public Unit getTarget(int index)
- Specified by:
getTargetin interfaceSwitchInst
-
setTarget
public void setTarget(int index, Unit target)- Specified by:
setTargetin interfaceSwitchInst
-
setTargets
public void setTargets(List<Unit> targets)
- Specified by:
setTargetsin interfaceSwitchInst
-
getTargetBox
public UnitBox getTargetBox(int index)
- Specified by:
getTargetBoxin interfaceSwitchInst
-
getTargets
public List<Unit> getTargets()
- Specified by:
getTargetsin interfaceSwitchInst
-
-