public final class CfgLoopBackend extends CfgDefaultVisitor
Finite loops are transformed into sequences of statements (i.e. loop unrolling), infinite loops are transformed into separate processes.
CfgVisitor.Status
Constructor and Description |
---|
CfgLoopBackend()
Default constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
onLoopEnd(CfgLoopStatement loop)
Finishes visiting
CfgLoopStatement node. |
void |
onModuleBegin(CfgModule module)
Starts visiting
CfgModule node. |
void |
onModuleEnd(CfgModule module)
Finishes visiting
CfgModule node. |
getStatus, onAssertBegin, onAssertEnd, onBasicBlockBegin, onBasicBlockEnd, onCaseBegin, onCaseEnd, onCfgModelBegin, onCfgModelEnd, onLoopBegin, onNodeBegin, onNodeEnd, onProcessBegin, onProcessEnd, onRootBegin, onRootEnd, onSwitchBegin, onSwitchEnd, onWaitBegin, onWaitEnd
public void onModuleBegin(CfgModule module)
CfgVisitor
CfgModule
node.onModuleBegin
in interface CfgVisitor
onModuleBegin
in class CfgDefaultVisitor
module
- Module node to be visited.public void onModuleEnd(CfgModule module)
CfgVisitor
CfgModule
node.onModuleEnd
in interface CfgVisitor
onModuleEnd
in class CfgDefaultVisitor
module
- Module node to be visited.public void onLoopEnd(CfgLoopStatement loop)
CfgVisitor
CfgLoopStatement
node.onLoopEnd
in interface CfgVisitor
onLoopEnd
in class CfgDefaultVisitor
loop
- Loop statement to be visited.