Imported Upstream version 1.72.0
[platform/upstream/boost.git] / boost / gil / extension / io / png / detail / supported_types.hpp
index 777d972..0477f8c 100644 (file)
@@ -15,6 +15,7 @@
 #endif // BOOST_GIL_IO_ENABLE_GRAY_ALPHA
 
 #include <cstddef>
+#include <type_traits>
 
 namespace boost { namespace gil { namespace detail {
 
@@ -318,14 +319,17 @@ struct png_write_support<uint16_t
 
 } // namespace detail
 
-template< typename Pixel >
-struct is_read_supported< Pixel
-                        , png_tag
-                        >
-    : mpl::bool_< detail::png_read_support< typename channel_type< Pixel >::type
-                                          , typename color_space_type< Pixel >::type
-                                          >::is_supported
-                >
+template<typename Pixel>
+struct is_read_supported<Pixel, png_tag>
+    : std::integral_constant
+    <
+        bool,
+        detail::png_read_support
+        <
+            typename channel_type<Pixel>::type,
+            typename color_space_type<Pixel>::type
+        >::is_supported
+    >
 {
     using parent_t = detail::png_read_support
         <
@@ -337,14 +341,17 @@ struct is_read_supported< Pixel
     static const png_color_type::type _color_type = parent_t::_color_type;
 };
 
-template< typename Pixel >
-struct is_write_supported< Pixel
-                         , png_tag
-                         >
-    : mpl::bool_< detail::png_write_support< typename channel_type< Pixel >::type
-                                           , typename color_space_type< Pixel >::type
-                                           >::is_supported
-                >
+template<typename Pixel>
+struct is_write_supported<Pixel, png_tag>
+    : std::integral_constant
+    <
+        bool,
+        detail::png_write_support
+        <
+            typename channel_type<Pixel>::type,
+            typename color_space_type<Pixel>::type
+        >::is_supported
+    >
 {
     using parent_t = detail::png_write_support
         <