diff options
Diffstat (limited to '3rdParty/Boost/src/boost/type_traits/is_pointer.hpp')
-rw-r--r-- | 3rdParty/Boost/src/boost/type_traits/is_pointer.hpp | 76 |
1 files changed, 1 insertions, 75 deletions
diff --git a/3rdParty/Boost/src/boost/type_traits/is_pointer.hpp b/3rdParty/Boost/src/boost/type_traits/is_pointer.hpp index 4e29bb3..aad30f2 100644 --- a/3rdParty/Boost/src/boost/type_traits/is_pointer.hpp +++ b/3rdParty/Boost/src/boost/type_traits/is_pointer.hpp @@ -25,17 +25,8 @@ #include <boost/type_traits/detail/ice_and.hpp> #include <boost/type_traits/detail/ice_not.hpp> #include <boost/type_traits/config.hpp> -#if !BOOST_WORKAROUND(BOOST_MSVC,<=1300) #include <boost/type_traits/remove_cv.hpp> -#endif -#ifdef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION -# include <boost/type_traits/is_reference.hpp> -# include <boost/type_traits/is_array.hpp> -# include <boost/type_traits/detail/is_function_ptr_tester.hpp> -# include <boost/type_traits/detail/false_result.hpp> -# include <boost/type_traits/detail/ice_or.hpp> -#endif // should be the last #include #include <boost/type_traits/detail/bool_trait_def.hpp> @@ -44,7 +35,7 @@ namespace boost { #if defined( __CODEGEARC__ ) BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_pointer,T,__is_pointer(T)) -#elif !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) +#else namespace detail { @@ -67,16 +58,6 @@ TT_AUX_BOOL_TRAIT_HELPER_PARTIAL_SPEC(is_pointer_helper,T*,true) template< typename T > struct is_pointer_impl { -#if BOOST_WORKAROUND(BOOST_MSVC,<=1300) - BOOST_STATIC_CONSTANT(bool, value = - (::boost::type_traits::ice_and< - ::boost::detail::is_pointer_helper<T>::value - , ::boost::type_traits::ice_not< - ::boost::is_member_pointer<T>::value - >::value - >::value) - ); -#else BOOST_STATIC_CONSTANT(bool, value = (::boost::type_traits::ice_and< ::boost::detail::is_pointer_helper<typename remove_cv<T>::type>::value @@ -85,7 +66,6 @@ struct is_pointer_impl >::value >::value) ); -#endif }; } // namespace detail @@ -99,62 +79,8 @@ BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_1(typename T,is_pointer,T& volatile,false) BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_1(typename T,is_pointer,T& const volatile,false) #endif -#else // no partial template specialization - -namespace detail { - -struct pointer_helper -{ - pointer_helper(const volatile void*); -}; - -yes_type BOOST_TT_DECL is_pointer_tester(pointer_helper); -no_type BOOST_TT_DECL is_pointer_tester(...); - -template <bool> -struct is_pointer_select - : public ::boost::type_traits::false_result -{ -}; - -template <> -struct is_pointer_select<false> -{ - template <typename T> struct result_ - { - static T& make_t(); - BOOST_STATIC_CONSTANT(bool, value = - (::boost::type_traits::ice_or< - (1 == sizeof(is_pointer_tester(make_t()))), - (1 == sizeof(type_traits::is_function_ptr_tester(make_t()))) - >::value)); - }; -}; - -template <typename T> -struct is_pointer_impl - : public is_pointer_select< - ::boost::type_traits::ice_or< - ::boost::is_reference<T>::value - , ::boost::is_array<T>::value - >::value - >::template result_<T> -{ -}; - -BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pointer,void,false) -#ifndef BOOST_NO_CV_VOID_SPECIALIZATIONS -BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pointer,void const,false) -BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pointer,void volatile,false) -BOOST_TT_AUX_BOOL_TRAIT_IMPL_SPEC1(is_pointer,void const volatile,false) #endif -} // namespace detail - -BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_pointer,T,::boost::detail::is_pointer_impl<T>::value) - -#endif // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION - } // namespace boost #include <boost/type_traits/detail/bool_trait_undef.hpp> |