From 981f71d04f683436847835d120ae688990560dc9 Mon Sep 17 00:00:00 2001 From: Kohei Takahashi Date: Sun, 1 Nov 2015 11:10:11 +0900 Subject: [PATCH] Use boost::enable_if_has_type instead. --- .../fusion/functional/invocation/invoke.hpp | 8 ++++---- .../invocation/invoke_function_object.hpp | 10 ++++------ .../functional/invocation/invoke_procedure.hpp | 4 ++-- .../boost/fusion/support/detail/enabler.hpp | 18 ------------------ test/compile_time/sfinae_friendly.hpp | 5 ++--- 5 files changed, 12 insertions(+), 33 deletions(-) delete mode 100644 include/boost/fusion/support/detail/enabler.hpp diff --git a/include/boost/fusion/functional/invocation/invoke.hpp b/include/boost/fusion/functional/invocation/invoke.hpp index b79ff5b4..09f3ead8 100644 --- a/include/boost/fusion/functional/invocation/invoke.hpp +++ b/include/boost/fusion/functional/invocation/invoke.hpp @@ -39,9 +39,9 @@ #include #include +#include #include -#include #include #include #include @@ -148,7 +148,7 @@ namespace boost { namespace fusion template struct invoke::type, Sequence >::result_type @@ -195,7 +195,7 @@ namespace boost { namespace fusion template struct invoke_impl::type >::type> { @@ -289,7 +289,7 @@ namespace boost { namespace fusion template struct invoke_impl::BOOST_PP_CAT(T, j) typename boost::result_of::type >::type> diff --git a/include/boost/fusion/functional/invocation/invoke_function_object.hpp b/include/boost/fusion/functional/invocation/invoke_function_object.hpp index 3ed508dd..2a88eaec 100644 --- a/include/boost/fusion/functional/invocation/invoke_function_object.hpp +++ b/include/boost/fusion/functional/invocation/invoke_function_object.hpp @@ -18,14 +18,12 @@ #include #include +#include #include #include -#include - #include -#include #include #include #include @@ -62,7 +60,7 @@ namespace boost { namespace fusion template struct invoke_function_object::type, Sequence >::result_type @@ -110,7 +108,7 @@ namespace boost { namespace fusion template struct invoke_function_object_impl::type >::type> { @@ -151,7 +149,7 @@ namespace boost { namespace fusion template struct invoke_function_object_impl::type >::type> #undef M diff --git a/include/boost/fusion/functional/invocation/invoke_procedure.hpp b/include/boost/fusion/functional/invocation/invoke_procedure.hpp index a0fe73a6..971ddbfd 100644 --- a/include/boost/fusion/functional/invocation/invoke_procedure.hpp +++ b/include/boost/fusion/functional/invocation/invoke_procedure.hpp @@ -20,6 +20,7 @@ #include #include +#include #include @@ -28,7 +29,6 @@ #include #include -#include #include #include #include @@ -66,7 +66,7 @@ namespace boost { namespace fusion template struct invoke_procedure::type,Sequence >::result_type diff --git a/include/boost/fusion/support/detail/enabler.hpp b/include/boost/fusion/support/detail/enabler.hpp deleted file mode 100644 index 48b69f32..00000000 --- a/include/boost/fusion/support/detail/enabler.hpp +++ /dev/null @@ -1,18 +0,0 @@ -/*============================================================================= - Copyright (c) 2015 Kohei Takahashi - - Use modification and distribution are subject to the Boost Software - License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at - http://www.boost.org/LICENSE_1_0.txt). -==============================================================================*/ -#ifndef FUSION_DETAIL_ENABLER_02082015_163810 -#define FUSION_DETAIL_ENABLER_02082015_163810 - -namespace boost { namespace fusion { namespace detail -{ - template - struct enabler { typedef T type; }; -}}} - -#endif - diff --git a/test/compile_time/sfinae_friendly.hpp b/test/compile_time/sfinae_friendly.hpp index 1111cd8c..9d0b866c 100644 --- a/test/compile_time/sfinae_friendly.hpp +++ b/test/compile_time/sfinae_friendly.hpp @@ -13,6 +13,7 @@ #include #include #include +#include #if !defined(BOOST_NO_SFINAE) && defined(BOOST_RESULT_OF_USE_DECLTYPE) @@ -20,8 +21,6 @@ namespace sfinae_friendly { - template struct void_ { typedef T type; }; - template struct arg_; template struct arg_ { typedef T type; }; @@ -30,7 +29,7 @@ namespace sfinae_friendly : boost::mpl::true_ { }; template - struct check::type> + struct check::type> : boost::mpl::false_ { }; struct unspecified {};