]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/boost/boost/heap/heap_merge.hpp
import new upstream nautilus stable release 14.2.8
[ceph.git] / ceph / src / boost / boost / heap / heap_merge.hpp
index 615b492ed59e012f27a4e81a741cc02d03287ff2..3aaa4cf587115e5d3288e57522e6d37b48ce50c6 100644 (file)
@@ -9,8 +9,11 @@
 #ifndef BOOST_HEAP_MERGE_HPP
 #define BOOST_HEAP_MERGE_HPP
 
+#include <algorithm>
+
 #include <boost/concept/assert.hpp>
 #include <boost/heap/heap_concepts.hpp>
+#include <boost/type_traits/conditional.hpp>
 #include <boost/type_traits/is_same.hpp>
 
 #ifdef BOOST_HAS_PRAGMA_ONCE
@@ -39,7 +42,7 @@ struct heap_merge_emulate
         }
     };
 
-    typedef typename boost::mpl::if_c<Heap1::has_reserve,
+    typedef typename boost::conditional<Heap1::has_reserve,
                                       reserver,
                                       dummy_reserver>::type space_reserver;
 
@@ -83,7 +86,7 @@ template <typename Heap>
 struct heap_merge_same
 {
     static const bool is_mergable = Heap::is_mergable;
-    typedef typename boost::mpl::if_c<is_mergable,
+    typedef typename boost::conditional<is_mergable,
                                       heap_merge_same_mergable<Heap>,
                                       heap_merge_emulate<Heap, Heap>
                                      >::type heap_merger;
@@ -115,7 +118,7 @@ void heap_merge(Heap1 & lhs, Heap2 & rhs)
 
     const bool same_heaps = boost::is_same<Heap1, Heap2>::value;
 
-    typedef typename boost::mpl::if_c<same_heaps,
+    typedef typename boost::conditional<same_heaps,
                                       detail::heap_merge_same<Heap1>,
                                       detail::heap_merge_emulate<Heap1, Heap2>
                                      >::type heap_merger;