@@ -253,7 +253,7 @@ class grapht
253
253
get_reachable (const std::vector<node_indext> &src, bool forwards) const ;
254
254
255
255
void disconnect_unreachable (node_indext src);
256
- void disconnect_unreachable (std::vector<node_indext> src);
256
+ void disconnect_unreachable (const std::vector<node_indext> & src);
257
257
258
258
void make_chordal ();
259
259
@@ -475,16 +475,15 @@ void grapht<N>::visit_reachable(node_indext src)
475
475
template <class N >
476
476
void grapht<N>::disconnect_unreachable(node_indext src)
477
477
{
478
- std::vector<node_indext> source_nodes;
479
- source_nodes.push_back (src);
478
+ const std::vector<node_indext> source_nodes (1 , src);
480
479
disconnect_unreachable (source_nodes);
481
480
}
482
481
483
482
// / Removes any edges between nodes in a graph that are unreachable
484
483
// / from a vector of start nodes.
485
484
// / \param src: vector of indices of start nodes
486
485
template <class N >
487
- void grapht<N>::disconnect_unreachable(std::vector<node_indext> src)
486
+ void grapht<N>::disconnect_unreachable(const std::vector<node_indext> & src)
488
487
{
489
488
std::vector<node_indext> reachable = get_reachable (src, true );
490
489
std::sort (reachable.begin (), reachable.end ());
@@ -493,7 +492,7 @@ void grapht<N>::disconnect_unreachable(std::vector<node_indext> src)
493
492
{
494
493
if (reachable_idx >= reachable.size ())
495
494
return ;
496
- PRECONDITION (i <= reachable[reachable_idx]);
495
+
497
496
if (i > reachable[reachable_idx])
498
497
throw " error disconnecting unreachable nodes" ;
499
498
0 commit comments