// This method finds all minimal self-contained graphs // by painting nodes colors (the colors happen to be // objects) in one pass over the statements and then doing // a second pass to put each statement mentioning a bnode // into the appropriate graph structure. public static Graph[] FindMSGs(SelectableSource source, bool loadIntoMemory) { FindMSGsSink sink = new FindMSGsSink(source, loadIntoMemory); source.Select(Statement.All, sink); ArrayList graphs = new ArrayList(sink.colors.Keys); return((Graph[])graphs.ToArray(typeof(Graph))); }
// This method finds all minimal self-contained graphs // by painting nodes colors (the colors happen to be // objects) in one pass over the statements and then doing // a second pass to put each statement mentioning a bnode // into the appropriate graph structure. public static Graph[] FindMSGs(SelectableSource source, bool loadIntoMemory) { FindMSGsSink sink = new FindMSGsSink(source, loadIntoMemory); source.Select(Statement.All, sink); ArrayList graphs = new ArrayList(sink.colors.Keys); return (Graph[])graphs.ToArray(typeof(Graph)); }