private void AddPredecessor(Edge <T> edge) { predecessors.Add(edge); }
private void RemovePredecessor(Edge <T> edge) { predecessors.Remove(edge); }
public void RemoveSuccessorEdge(Edge <T> edge) { successors.Remove(edge); edge.Target.RemovePredecessor(edge); }