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