void dfs_DiscoverVertex(object sender, VertexEventArgs e) { TypeVertex v = (TypeVertex)e.Vertex; Trace.WriteLine("S: " + v.Name); Trace.Indent(); PendingEdges.Push(new List <TypeVertex>()); if (!destcg.ContainsVertex(v)) { CondensedVertex nv; TypeReference tref = v.TypeRef; string trefNamespace = v.Namespace; if (!NamespaceVertexMap.ContainsKey(trefNamespace)) { nv = (CondensedVertex)destcg.AddVertex(); nv.NameSpaces[trefNamespace] = 0; NamespaceVertexMap[trefNamespace] = new List <CondensedVertex>(); NamespaceVertexMap[trefNamespace].Add(nv); } else { nv = NamespaceVertexMap[trefNamespace][0]; } nv.NameSpaces[trefNamespace]++; nv.ContainedTypes.Add(tref); VertexReassignmentMap[v] = nv; return; } }