| 3717 | struct UnorderedEqualsMatcher : MatcherBase<std::vector<T, AllocMatch>> { |
| 3718 | UnorderedEqualsMatcher(std::vector<T, AllocComp> const& target) : m_target(target) {} |
| 3719 | bool match(std::vector<T, AllocMatch> const& vec) const override { |
| 3720 | if (m_target.size() != vec.size()) { |
| 3721 | return false; |
| 3722 | } |
| 3723 | return std::is_permutation(m_target.begin(), m_target.end(), vec.begin()); |
| 3724 | } |
| 3725 | |
| 3726 | std::string describe() const override { |
| 3727 | return "UnorderedEquals: " + ::Catch::Detail::stringify(m_target); |