package vaporize.library; import cs132.vapor.ast.*; import java.util.ArrayList; public class ControlFlowGraph { private ArrayList nodes; private CFGNode start; private CFGNode end; public ControlFlowGraph() { this.nodes = new ArrayList<>(); this.start = null; this.end = null; } protected void addNode(CFGNode node) { this.nodes.add(node); } protected void addEdge(CFGNode source, CFGNode dest) { source.addDest(dest); dest.addSource(source); } protected void setStart(CFGNode start) { this.start = start; } /** * The following methods are for testing * only! */ protected ArrayList getNodes() { return this.nodes; } }