private IEnumerable <TVertex> GetTopologicallyNextVertices(TVertex vertex)
 {
     return(_sortOrder == TopologicalSortOrder.SinksFirst
         ? _unprocessedGraph.GetInNeighbours(vertex)
         : _unprocessedGraph.GetOutNeighbours(vertex));
 }