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/mpl/aux_/msvc_is_class.hpp | |
parent | 4c8104756b92b9fa16b3a725e8a6aa620dfd606e (diff) |
Get rid of legacy build systems and rename cutl/ to libcutl/
Diffstat (limited to 'cutl/details/boost/mpl/aux_/msvc_is_class.hpp')
-rw-r--r-- | cutl/details/boost/mpl/aux_/msvc_is_class.hpp | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/cutl/details/boost/mpl/aux_/msvc_is_class.hpp b/cutl/details/boost/mpl/aux_/msvc_is_class.hpp deleted file mode 100644 index 17da363..0000000 --- a/cutl/details/boost/mpl/aux_/msvc_is_class.hpp +++ /dev/null @@ -1,58 +0,0 @@ - -#ifndef BOOST_MPL_AUX_MSVC_IS_CLASS_HPP_INCLUDED -#define BOOST_MPL_AUX_MSVC_IS_CLASS_HPP_INCLUDED - -// Copyright Aleksey Gurtovoy 2002-2004 -// -// Distributed under 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/mpl for documentation. - -// $Id: msvc_is_class.hpp 49267 2008-10-11 06:19:02Z agurtovoy $ -// $Date: 2008-10-10 23:19:02 -0700 (Fri, 10 Oct 2008) $ -// $Revision: 49267 $ - -#include <cutl/details/boost/mpl/if.hpp> -#include <cutl/details/boost/mpl/bool.hpp> -#include <cutl/details/boost/mpl/aux_/type_wrapper.hpp> -#include <cutl/details/boost/mpl/aux_/yes_no.hpp> - -#include <cutl/details/boost/type_traits/is_reference.hpp> - -namespace cutl_details_boost { namespace mpl { namespace aux { - -template< typename T > struct is_class_helper -{ - typedef int (T::* type)(); -}; - -// MSVC 6.x-specific lightweight 'is_class' implementation; -// Distinguishing feature: does not instantiate the type being tested. -template< typename T > -struct msvc_is_class_impl -{ - template< typename U> - static yes_tag test(type_wrapper<U>*, /*typename*/ is_class_helper<U>::type = 0); - static no_tag test(void const volatile*, ...); - - enum { value = sizeof(test((type_wrapper<T>*)0)) == sizeof(yes_tag) }; - typedef bool_<value> type; -}; - -// agurt, 17/sep/04: have to check for 'is_reference' upfront to avoid ICEs in -// complex metaprograms -template< typename T > -struct msvc_is_class - : if_< - is_reference<T> - , false_ - , msvc_is_class_impl<T> - >::type -{ -}; - -}}} - -#endif // BOOST_MPL_AUX_MSVC_IS_CLASS_HPP_INCLUDED |