diff options
author | MyoungJune Park <mj2004.park@samsung.com> | 2016-11-09 18:20:36 -0800 |
---|---|---|
committer | Gerrit Code Review <gerrit@review.vlan103.tizen.org> | 2016-11-09 18:20:36 -0800 |
commit | 2212a42dc9bc8e6fea9d1dfaf7d2325c3a82b6ab (patch) | |
tree | 692e5f3fa6c597e6219766a393411e5a7b82be83 /boost/type_traits/is_array.hpp | |
parent | 19bc0ae04846b66e010064545c66a1b6f1a042ac (diff) | |
parent | dbcd53541404bc733ffbac7424388791190e1043 (diff) | |
download | boost-2212a42dc9bc8e6fea9d1dfaf7d2325c3a82b6ab.tar.gz boost-2212a42dc9bc8e6fea9d1dfaf7d2325c3a82b6ab.tar.bz2 boost-2212a42dc9bc8e6fea9d1dfaf7d2325c3a82b6ab.zip |
Merge "Rebase for boost 1.62.0" into tizen
Diffstat (limited to 'boost/type_traits/is_array.hpp')
-rw-r--r-- | boost/type_traits/is_array.hpp | 31 |
1 files changed, 12 insertions, 19 deletions
diff --git a/boost/type_traits/is_array.hpp b/boost/type_traits/is_array.hpp index c381ca4e70..53e1613ab6 100644 --- a/boost/type_traits/is_array.hpp +++ b/boost/type_traits/is_array.hpp @@ -14,30 +14,25 @@ #ifndef BOOST_TT_IS_ARRAY_HPP_INCLUDED #define BOOST_TT_IS_ARRAY_HPP_INCLUDED -#include <boost/type_traits/config.hpp> - - -#include <cstddef> - -// should be the last #include -#include <boost/type_traits/detail/bool_trait_def.hpp> +#include <boost/type_traits/integral_constant.hpp> +#include <cstddef> // size_t namespace boost { #if defined( __CODEGEARC__ ) -BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_array,T,__is_array(T)) + template <class T> struct is_array : public integral_constant<bool, __is_array(T)> {}; #else -BOOST_TT_AUX_BOOL_TRAIT_DEF1(is_array,T,false) + template <class T> struct is_array : public false_type {}; #if !defined(BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS) -BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_2(typename T,std::size_t N,is_array,T[N],true) -BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_2(typename T,std::size_t N,is_array,T const[N],true) -BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_2(typename T,std::size_t N,is_array,T volatile[N],true) -BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_2(typename T,std::size_t N,is_array,T const volatile[N],true) + template <class T, std::size_t N> struct is_array<T[N]> : public true_type {}; + template <class T, std::size_t N> struct is_array<T const[N]> : public true_type{}; + template <class T, std::size_t N> struct is_array<T volatile[N]> : public true_type{}; + template <class T, std::size_t N> struct is_array<T const volatile[N]> : public true_type{}; #if !BOOST_WORKAROUND(__BORLANDC__, < 0x600) && !defined(__IBMCPP__) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) -BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_1(typename T,is_array,T[],true) -BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_1(typename T,is_array,T const[],true) -BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_1(typename T,is_array,T volatile[],true) -BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_1(typename T,is_array,T const volatile[],true) + template <class T> struct is_array<T[]> : public true_type{}; + template <class T> struct is_array<T const[]> : public true_type{}; + template <class T> struct is_array<T const volatile[]> : public true_type{}; + template <class T> struct is_array<T volatile[]> : public true_type{}; #endif #endif @@ -45,6 +40,4 @@ BOOST_TT_AUX_BOOL_TRAIT_PARTIAL_SPEC1_1(typename T,is_array,T const volatile[],t } // namespace boost -#include <boost/type_traits/detail/bool_trait_undef.hpp> - #endif // BOOST_TT_IS_ARRAY_HPP_INCLUDED |