From d02457a9a59a7f71c36ef892546481c8a5abf8e6 Mon Sep 17 00:00:00 2001 From: Laurent Rineau Date: Wed, 10 Apr 2024 10:24:11 +0200 Subject: [PATCH] make_sorted_pair, for any aggregate with 2 members --- STL_Extension/include/CGAL/utility.h | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/STL_Extension/include/CGAL/utility.h b/STL_Extension/include/CGAL/utility.h index 277476c6079..7dfb8cf084d 100644 --- a/STL_Extension/include/CGAL/utility.h +++ b/STL_Extension/include/CGAL/utility.h @@ -295,22 +295,8 @@ struct Default_using_type }; }; -template -struct less_cpp14 -{ - template - bool operator() (T1&& t1, T2&& t2) const - { - typedef typename Default_using_type::Get< - T_, - typename std::common_type::type, - typename std::decay::type> >::type T; - return std::less()(t1,t2); - } -}; - template , + class Compare = std::less<>, class T1, class T2, class A = typename Default_using_type::Get(t2), std::forward(t1)); } +template +auto make_sorted_pair(Pair&& pair) { + auto&& [a, b] = std::forward(pair); + return make_sorted_pair(std::forward(a), std::forward(b)); +} + } //namespace CGAL namespace std {