public StronglyConnectedComponents(ControlFlowGraph cfg) { this.cfg = cfg; this.sccMap = null; IEnumerable /*<StronglyConnectedComponent<CfgBlock>>*/ all_sccs = StronglyConnectedComponent.ConstructSCCs(this.cfg.Blocks(), new BackwardGraphNavigator(this.cfg)); this.sccs = GraphUtil.TopologicallySortComponentGraph(DataStructUtil.DefaultSetFactory, all_sccs); }