1 // Copyright (c) 2009-2016 Vladimir Batov.
2 // Use, modification and distribution are subject to the Boost Software License,
3 // Version 1.0. See http://www.boost.org/LICENSE_1_0.txt.
5 #ifndef BOOST_CONVERT_DETAIL_IS_CHAR_HPP
6 #define BOOST_CONVERT_DETAIL_IS_CHAR_HPP
8 #include <boost/mpl/bool.hpp>
9 #include <boost/type_traits/remove_const.hpp>
11 namespace boost { namespace cnv
15 template<typename T> struct is_char : mpl::false_ {};
16 template<> struct is_char<char> : mpl:: true_ {};
17 template<> struct is_char<wchar_t> : mpl:: true_ {};
19 template <typename T> struct is_char : detail::is_char<typename remove_const<T>::type> {};
22 #endif // BOOST_CONVERT_DETAIL_IS_CHAR_HPP