diff options
author | Remko Tronçon <git@el-tramo.be> | 2010-02-11 12:14:00 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2010-02-11 12:14:00 (GMT) |
commit | 0efa7c32aaf21a29b42b5926cc116007056843be (patch) | |
tree | 882f663a5dd0e65694bf6077b71086dd77fd7ff8 /3rdParty/Boost/boost/mpl/aux_/msvc_is_class.hpp | |
parent | 1d20eabbc32274b491b4c2bedf73d19933d97bfd (diff) | |
download | swift-contrib-0efa7c32aaf21a29b42b5926cc116007056843be.zip swift-contrib-0efa7c32aaf21a29b42b5926cc116007056843be.tar.bz2 |
Moved some modules into separate git modules.
Diffstat (limited to '3rdParty/Boost/boost/mpl/aux_/msvc_is_class.hpp')
m--------- | 3rdParty/Boost | 0 | ||||
-rw-r--r-- | 3rdParty/Boost/boost/mpl/aux_/msvc_is_class.hpp | 58 |
2 files changed, 0 insertions, 58 deletions
diff --git a/3rdParty/Boost b/3rdParty/Boost new file mode 160000 +Subproject 3bbdbc8cf1996f23d9a366da8bac0f97be6ad79 diff --git a/3rdParty/Boost/boost/mpl/aux_/msvc_is_class.hpp b/3rdParty/Boost/boost/mpl/aux_/msvc_is_class.hpp deleted file mode 100644 index e0ccb38..0000000 --- a/3rdParty/Boost/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-11 02:19:02 -0400 (Sat, 11 Oct 2008) $ -// $Revision: 49267 $ - -#include <boost/mpl/if.hpp> -#include <boost/mpl/bool.hpp> -#include <boost/mpl/aux_/type_wrapper.hpp> -#include <boost/mpl/aux_/yes_no.hpp> - -#include <boost/type_traits/is_reference.hpp> - -namespace 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 |