diff options
Diffstat (limited to 'boost/lexical_cast/detail/is_character.hpp')
-rw-r--r-- | boost/lexical_cast/detail/is_character.hpp | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/boost/lexical_cast/detail/is_character.hpp b/boost/lexical_cast/detail/is_character.hpp index e967f58525..732c39f8e8 100644 --- a/boost/lexical_cast/detail/is_character.hpp +++ b/boost/lexical_cast/detail/is_character.hpp @@ -23,6 +23,7 @@ # pragma once #endif +#include <boost/mpl/bool.hpp> #include <boost/type_traits/is_same.hpp> namespace boost { @@ -33,22 +34,22 @@ namespace boost { template < typename T > struct is_character { - typedef boost::type_traits::ice_or< - boost::is_same< T, char >::value, + typedef BOOST_DEDUCED_TYPENAME boost::mpl::bool_< + boost::is_same< T, char >::value || #if !defined(BOOST_NO_STRINGSTREAM) && !defined(BOOST_NO_STD_WSTRING) - boost::is_same< T, wchar_t >::value, + boost::is_same< T, wchar_t >::value || #endif #ifndef BOOST_NO_CXX11_CHAR16_T - boost::is_same< T, char16_t >::value, + boost::is_same< T, char16_t >::value || #endif #ifndef BOOST_NO_CXX11_CHAR32_T - boost::is_same< T, char32_t >::value, + boost::is_same< T, char32_t >::value || #endif - boost::is_same< T, unsigned char >::value, - boost::is_same< T, signed char >::value - > result_type; + boost::is_same< T, unsigned char >::value || + boost::is_same< T, signed char >::value + > type; - BOOST_STATIC_CONSTANT(bool, value = (result_type::value) ); + BOOST_STATIC_CONSTANT(bool, value = (type::value) ); }; } } |