Newer
Older
public abstract class CFGGraph extends Graph<CFGNode> {
setRootVertex(new CFGNode(NodeId.getVertexId(), getRootNodeData()));
public CFGNode addNode(String instruction) {
CFGNode vertex = new CFGNode(NodeId.getVertexId(), instruction);
this.addVertex(vertex);
return vertex;
}
protected abstract String getRootNodeData();
@SuppressWarnings("unchecked")
public void addControlFlowEdge(CFGNode from, CFGNode to) {
super.addEdge((Arrow) new ControlFlowArc(from, to));
}
}