From 555a9f4039bf407525e6e49f04c5593d303d9753 Mon Sep 17 00:00:00 2001 From: John Maddock Date: Sat, 4 Jan 2003 12:59:22 +0000 Subject: [PATCH] Simplified implementation to !is_fundamental [SVN r16747] --- include/boost/type_traits/is_compound.hpp | 22 +++++----------------- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/include/boost/type_traits/is_compound.hpp b/include/boost/type_traits/is_compound.hpp index 29691ab..88c1419 100644 --- a/include/boost/type_traits/is_compound.hpp +++ b/include/boost/type_traits/is_compound.hpp @@ -10,15 +10,9 @@ #ifndef BOOST_TT_IS_COMPOUND_HPP_INCLUDED #define BOOST_TT_IS_COMPOUND_HPP_INCLUDED -#include "boost/type_traits/is_array.hpp" -#include "boost/type_traits/is_pointer.hpp" -#include "boost/type_traits/is_reference.hpp" -#include "boost/type_traits/is_class.hpp" -#include "boost/type_traits/is_union.hpp" -#include "boost/type_traits/is_enum.hpp" -#include "boost/type_traits/is_member_pointer.hpp" -#include "boost/type_traits/detail/ice_or.hpp" #include "boost/config.hpp" +#include "boost/type_traits/is_fundamental.hpp" +#include "boost/type_traits/detail/ice_not.hpp" // should be the last #include #include "boost/type_traits/detail/bool_trait_def.hpp" @@ -31,15 +25,9 @@ template struct is_compound_impl { BOOST_STATIC_CONSTANT(bool, value = - (::boost::type_traits::ice_or< - ::boost::is_array::value, - ::boost::is_pointer::value, - ::boost::is_reference::value, - ::boost::is_class::value, - ::boost::is_union::value, - ::boost::is_enum::value, - ::boost::is_member_pointer::value - >::value)); + (::boost::type_traits::ice_not< + ::boost::is_fundamental::value + >::value)); }; } // namespace detail