imgtools/imglib/boostlibrary/boost/type_traits/is_fundamental.hpp
changeset 2 39c28ec933dd
equal deleted inserted replaced
1:820b22e13ff1 2:39c28ec933dd
       
     1 
       
     2 //  (C) Copyright Steve Cleary, Beman Dawes, Howard Hinnant & John Maddock 2000.
       
     3 //  Use, modification and distribution are subject to the Boost Software License,
       
     4 //  Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
       
     5 //  http://www.boost.org/LICENSE_1_0.txt).
       
     6 //
       
     7 //  See http://www.boost.org/libs/type_traits for most recent version including documentation.
       
     8 
       
     9 #ifndef BOOST_TT_IS_FUNDAMENTAL_HPP_INCLUDED
       
    10 #define BOOST_TT_IS_FUNDAMENTAL_HPP_INCLUDED
       
    11 
       
    12 #include <boost/type_traits/is_arithmetic.hpp>
       
    13 #include <boost/type_traits/is_void.hpp>
       
    14 #include <boost/type_traits/detail/ice_or.hpp>
       
    15 
       
    16 // should be the last #include
       
    17 #include <boost/type_traits/detail/bool_trait_def.hpp>
       
    18 
       
    19 namespace boost {
       
    20 
       
    21 namespace detail {
       
    22 
       
    23 template <typename T> 
       
    24 struct is_fundamental_impl
       
    25     : ::boost::type_traits::ice_or< 
       
    26           ::boost::is_arithmetic<T>::value
       
    27         , ::boost::is_void<T>::value
       
    28         >
       
    29 { 
       
    30 };
       
    31 
       
    32 } // namespace detail
       
    33 
       
    34 //* is a type T a fundamental type described in the standard (3.9.1)
       
    35 #if defined( __CODEGEARC__ )
       
    36 BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_fundamental,T,__is_fundamental(T))
       
    37 #else
       
    38 BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_fundamental,T,::boost::detail::is_fundamental_impl<T>::value)
       
    39 #endif
       
    40 
       
    41 } // namespace boost
       
    42 
       
    43 #include <boost/type_traits/detail/bool_trait_undef.hpp>
       
    44 
       
    45 #endif // BOOST_TT_IS_FUNDAMENTAL_HPP_INCLUDED