soot.jimple.internal
Class JLookupSwitchStmt
java.lang.Object
soot.tagkit.AbstractHost
soot.AbstractUnit
soot.jimple.internal.AbstractStmt
soot.jimple.internal.JLookupSwitchStmt
- All Implemented Interfaces:
- Context, ConvertToBaf, Host, LookupSwitchStmt, Serializable, Stmt, Switchable, Unit
- Direct Known Subclasses:
- GLookupSwitchStmt
- public class JLookupSwitchStmt
- extends AbstractStmt
- implements LookupSwitchStmt
- See Also:
- Serialized Form
targetBoxes
protected UnitBox[] targetBoxes
JLookupSwitchStmt
public JLookupSwitchStmt(Value key,
List lookupValues,
List targets,
Unit defaultTarget)
- Constructs a new JLookupSwitchStmt. lookupValues should be a list of IntConst s.
JLookupSwitchStmt
public JLookupSwitchStmt(Value key,
List lookupValues,
List targets,
UnitBox defaultTarget)
- Constructs a new JLookupSwitchStmt. lookupValues should be a list of IntConst s.
JLookupSwitchStmt
protected JLookupSwitchStmt(ValueBox keyBox,
List lookupValues,
UnitBox[] targetBoxes,
UnitBox defaultTargetBox)
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()
toString
public void toString(UnitPrinter up)
- Specified by:
toString in interface Stmt
getDefaultTarget
public Unit getDefaultTarget()
- Specified by:
getDefaultTarget in interface LookupSwitchStmt
setDefaultTarget
public void setDefaultTarget(Unit defaultTarget)
- Specified by:
setDefaultTarget in interface LookupSwitchStmt
getDefaultTargetBox
public UnitBox getDefaultTargetBox()
- Specified by:
getDefaultTargetBox in interface LookupSwitchStmt
getKey
public Value getKey()
- Specified by:
getKey in interface LookupSwitchStmt
setKey
public void setKey(Value key)
- Specified by:
setKey in interface LookupSwitchStmt
getKeyBox
public ValueBox getKeyBox()
- Specified by:
getKeyBox in interface LookupSwitchStmt
setLookupValues
public void setLookupValues(List lookupValues)
- Specified by:
setLookupValues in interface LookupSwitchStmt
setLookupValue
public void setLookupValue(int index,
int value)
- Specified by:
setLookupValue in interface LookupSwitchStmt
getLookupValue
public int getLookupValue(int index)
- Specified by:
getLookupValue in interface LookupSwitchStmt
getLookupValues
public List getLookupValues()
- Specified by:
getLookupValues in interface LookupSwitchStmt
getTargetCount
public int getTargetCount()
- Specified by:
getTargetCount in interface LookupSwitchStmt
getTarget
public Unit getTarget(int index)
- Specified by:
getTarget in interface LookupSwitchStmt
getTargetBox
public UnitBox getTargetBox(int index)
- Specified by:
getTargetBox in interface LookupSwitchStmt
setTarget
public void setTarget(int index,
Unit target)
- Specified by:
setTarget in interface LookupSwitchStmt
getTargets
public List getTargets()
- Specified by:
getTargets in interface LookupSwitchStmt
setTargets
public void setTargets(Unit[] targets)
- Specified by:
setTargets in interface LookupSwitchStmt
getUseBoxes
public List getUseBoxes()
- Description copied from interface:
Unit
- Returns a list of Boxes containing Values used in this Unit.
- Specified by:
getUseBoxes in interface Unit- Overrides:
getUseBoxes in class AbstractUnit
getUnitBoxes
public List getUnitBoxes()
- Description copied from interface:
Unit
- Returns a list of Boxes containing Units defined in this Unit; typically
branch targets.
- Specified by:
getUnitBoxes in interface Unit- Overrides:
getUnitBoxes in class AbstractUnit
apply
public void apply(Switch sw)
- Description copied from interface:
Switchable
- Called when this object is visited.
- Specified by:
apply in interface Switchable- Overrides:
apply in class AbstractUnit
convertToBaf
public void convertToBaf(JimpleToBafContext context,
List 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