diff options
author | Karen Arutyunov <karen@codesynthesis.com> | 2020-12-16 20:29:05 +0300 |
---|---|---|
committer | Karen Arutyunov <karen@codesynthesis.com> | 2021-02-24 16:40:04 +0300 |
commit | 8e761289a2446367267c6c0d9a26e734f0f78306 (patch) | |
tree | fb495d8c18801f271d124ee48731f10df396ca89 /cutl/details/boost/type_traits/remove_pointer.hpp | |
parent | 4c8104756b92b9fa16b3a725e8a6aa620dfd606e (diff) |
Get rid of legacy build systems and rename cutl/ to libcutl/
Diffstat (limited to 'cutl/details/boost/type_traits/remove_pointer.hpp')
-rw-r--r-- | cutl/details/boost/type_traits/remove_pointer.hpp | 92 |
1 files changed, 0 insertions, 92 deletions
diff --git a/cutl/details/boost/type_traits/remove_pointer.hpp b/cutl/details/boost/type_traits/remove_pointer.hpp deleted file mode 100644 index 6aa2c0e..0000000 --- a/cutl/details/boost/type_traits/remove_pointer.hpp +++ /dev/null @@ -1,92 +0,0 @@ - -// (C) Copyright Steve Cleary, Beman Dawes, Howard Hinnant & John Maddock 2000. -// 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). -// -// See http://www.boost.org/libs/type_traits for most recent version including documentation. - -#ifndef BOOST_TT_REMOVE_POINTER_HPP_INCLUDED -#define BOOST_TT_REMOVE_POINTER_HPP_INCLUDED - -#include <cutl/details/boost/config.hpp> -#include <cutl/details/boost/detail/workaround.hpp> -#ifdef BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION -#include <cutl/details/boost/type_traits/broken_compiler_spec.hpp> -#endif - -#if BOOST_WORKAROUND(BOOST_MSVC,<=1300) -#include <cutl/details/boost/type_traits/msvc/remove_pointer.hpp> -#elif defined(BOOST_MSVC) -#include <cutl/details/boost/type_traits/remove_cv.hpp> -#include <cutl/details/boost/type_traits/is_pointer.hpp> -#endif - -// should be the last #include -#include <cutl/details/boost/type_traits/detail/type_trait_def.hpp> - -namespace cutl_details_boost { - -#ifdef BOOST_MSVC - -namespace detail{ - - // - // We need all this crazy indirection because a type such as: - // - // T (*const)(U) - // - // Does not bind to a <T*> or <T*const> partial specialization with VC10 and earlier - // - template <class T> - struct remove_pointer_imp - { - typedef T type; - }; - - template <class T> - struct remove_pointer_imp<T*> - { - typedef T type; - }; - - template <class T, bool b> - struct remove_pointer_imp3 - { - typedef typename remove_pointer_imp<typename cutl_details_boost::remove_cv<T>::type>::type type; - }; - - template <class T> - struct remove_pointer_imp3<T, false> - { - typedef T type; - }; - - template <class T> - struct remove_pointer_imp2 - { - typedef typename remove_pointer_imp3<T, ::cutl_details_boost::is_pointer<T>::value>::type type; - }; -} - -BOOST_TT_AUX_TYPE_TRAIT_DEF1(remove_pointer,T,typename cutl_details_boost::detail::remove_pointer_imp2<T>::type) - -#elif !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) - -BOOST_TT_AUX_TYPE_TRAIT_DEF1(remove_pointer,T,T) -BOOST_TT_AUX_TYPE_TRAIT_PARTIAL_SPEC1_1(typename T,remove_pointer,T*,T) -BOOST_TT_AUX_TYPE_TRAIT_PARTIAL_SPEC1_1(typename T,remove_pointer,T* const,T) -BOOST_TT_AUX_TYPE_TRAIT_PARTIAL_SPEC1_1(typename T,remove_pointer,T* volatile,T) -BOOST_TT_AUX_TYPE_TRAIT_PARTIAL_SPEC1_1(typename T,remove_pointer,T* const volatile,T) - -#elif !BOOST_WORKAROUND(BOOST_MSVC,<=1300) - -BOOST_TT_AUX_TYPE_TRAIT_DEF1(remove_pointer,T,typename cutl_details_boost::detail::remove_pointer_impl<T>::type) - -#endif - -} // namespace cutl_details_boost - -#include <cutl/details/boost/type_traits/detail/type_trait_undef.hpp> - -#endif // BOOST_TT_REMOVE_POINTER_HPP_INCLUDED |