bool operator == (const Labels& left, const Labels& right) { // Order of labels is not important. if (left.labels().size() != right.labels().size()) { return false; } for (int i = 0; i < left.labels().size(); i++) { bool found = false; for (int j = 0; j < right.labels().size(); j++) { if (left.labels().Get(i) == right.labels().Get(j)) { found = true; break; } } if (!found) { return false; } } return true; }