Imported Upstream version 1.72.0
[platform/upstream/boost.git] / boost / gil / extension / io / pnm / detail / supported_types.hpp
index 1aab88f..380a898 100644 (file)
@@ -14,8 +14,7 @@
 #include <boost/gil/color_base.hpp>
 #include <boost/gil/io/base.hpp>
 
-#include <boost/mpl/not.hpp>
-#include <boost/type_traits/is_same.hpp>
+#include <type_traits>
 
 namespace boost { namespace gil { namespace detail {
 
@@ -105,14 +104,17 @@ struct pnm_write_support<uint8_t
 
 } // namespace detail
 
-template< typename Pixel >
-struct is_read_supported< Pixel
-                        , pnm_tag
-                        >
-    : mpl::bool_< detail::pnm_read_support< typename channel_type    < Pixel >::type
-                                          , typename color_space_type< Pixel >::type
-                                          >::is_supported
-                >
+template<typename Pixel>
+struct is_read_supported<Pixel, pnm_tag>
+    : std::integral_constant
+    <
+        bool,
+        detail::pnm_read_support
+        <
+            typename channel_type<Pixel>::type,
+            typename color_space_type<Pixel>::type
+        >::is_supported
+    >
 {
     using parent_t = detail::pnm_read_support
         <
@@ -124,14 +126,18 @@ struct is_read_supported< Pixel
     static const pnm_image_type::type _bin_type = parent_t::_bin_type;
 };
 
-template< typename Pixel >
-struct is_write_supported< Pixel
-                         , pnm_tag
-                         >
-    : mpl::bool_< detail::pnm_write_support< typename channel_type    < Pixel >::type
-                                           , typename color_space_type< Pixel >::type
-                                           >::is_supported
-                > {};
+template<typename Pixel>
+struct is_write_supported<Pixel, pnm_tag>
+    : std::integral_constant
+    <
+        bool,
+        detail::pnm_write_support
+        <
+            typename channel_type<Pixel>::type,
+            typename color_space_type<Pixel>::type
+        >::is_supported
+    >
+{};
 
 } // namespace gil
 } // namespace boost