public void Visit(Box visited) { foreach (var item in visited.Inputs) { try { var input = new DummyVertex() { Id = item, Parent = visited }; visited.InputDummies.Add(input); DummyVertices.Add(item, input); } catch (Exception ex) { throw new Exception(string.Format("Input dummy id isn't unique {0}", item), ex); } } foreach (var item in visited.Outputs) { try { var dummy = new DummyVertex() { Id = item, Parent = visited }; visited.OutputDummies.Add(dummy); DummyVertices.Add(item, dummy); } catch(Exception ex) { throw new Exception(string.Format("Output dummy id isn't unique {0}", item), ex); } } }
public void Visit(Subgraph visited) { foreach (var item in visited.Inputs) { var input = new DummyVertex() { Id = item, Parent = visited }; visited.InputDummies.Add(input); DummyVertices.Add(item, input); } foreach (var item in visited.Outputs) { var dummy = new DummyVertex() { Id = item, Parent = visited }; visited.OutputDummies.Add(dummy); DummyVertices.Add(item, dummy); } foreach (var vertex in visited.Vertices) { vertex.Accept(this); } }