public class CfgRangedSwitchBackend extends CfgEmptyVisitor
The backend optimizes sequences of control flow graph
CfgSwitchStatement
switch statements. Statements to be
optimized should have conditions of the x[i:j]
form, where x
is a common
variable for sequence statements; i
and j
indices are constants; ranges
of subsequent statements are non-intersecting but can be joined.
ModelVisitor.Status
Constructor and Description |
---|
CfgRangedSwitchBackend() |
Modifier and Type | Method and Description |
---|---|
void |
onSwitchBegin(CfgSwitchStatement switchNode)
Starts visiting
CfgSwitchStatement node. |
onAssertBegin, onAssertEnd, onBlockBegin, onBlockEnd, onCaseBegin, onCaseEnd, onLoopBegin, onLoopEnd, onSwitchEnd, onWaitBegin, onWaitEnd
getStatus, onModelBegin, onModelEnd, onModuleBegin, onModuleEnd, onProcessBegin, onProcessEnd, onRootBegin, onRootEnd, onStatementBegin, onStatementEnd
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getStatus, onModelBegin, onModelEnd, onModuleBegin, onModuleEnd, onProcessBegin, onProcessEnd, onRootBegin, onRootEnd, onStatementBegin, onStatementEnd
public void onSwitchBegin(CfgSwitchStatement switchNode)
CfgVisitor
CfgSwitchStatement
node.onSwitchBegin
in interface CfgVisitor
onSwitchBegin
in class CfgEmptyVisitor
switchNode
- Switch statement to be visited.