2
0
mirror of https://github.com/boostorg/graph.git synced 2026-01-19 16:22:14 +00:00

Avoid reference member in multiplicity functor

This commit is contained in:
Jan-Grimo Sobez
2023-09-19 11:00:02 +02:00
parent 0be4c876bd
commit 8f3139bed4

View File

@@ -97,16 +97,19 @@ namespace detail
struct compare_multiplicity
{
compare_multiplicity(Invariant1 invariant1, const multiplicity_map& multiplicity)
: invariant1(invariant1), multiplicity(multiplicity)
: invariant1(invariant1), multiplicity(&multiplicity)
{
}
bool operator()(const vertex1_t& x, const vertex1_t& y) const
{
return multiplicity.at(invariant1(x))
< multiplicity.at(invariant1(y));
auto x_multiplicity_iter = multiplicity->find(invariant1(x));
assert(x_multiplicity_iter != multiplicity->end());
auto y_multiplicity_iter = multiplicity->find(invariant1(y));
assert(y_multiplicity_iter != multiplicity->end());
return *x_multiplicity_iter < *y_multiplicity_iter;
}
Invariant1 invariant1;
const multiplicity_map& multiplicity;
const multiplicity_map* multiplicity;
};
struct record_dfs_order : default_dfs_visitor