1 | /* |
---|---|
2 | Copyright 2020 Glen Joseph Fernandes |
3 | (glenjofe@gmail.com) |
4 | |
5 | Distributed under the Boost Software License, |
6 | Version 1.0. (See accompanying file LICENSE_1_0.txt |
7 | or copy at http://www.boost.org/LICENSE_1_0.txt) |
8 | */ |
9 | |
10 | #ifndef BOOST_TT_IS_SCOPED_ENUM_HPP_INCLUDED |
11 | #define BOOST_TT_IS_SCOPED_ENUM_HPP_INCLUDED |
12 | |
13 | #include <boost/type_traits/conjunction.hpp> |
14 | #include <boost/type_traits/is_enum.hpp> |
15 | #include <boost/type_traits/is_convertible.hpp> |
16 | #include <boost/type_traits/negation.hpp> |
17 | |
18 | namespace boost { |
19 | |
20 | template<class T> |
21 | struct is_scoped_enum |
22 | : conjunction<is_enum<T>, negation<is_convertible<T, int> > >::type { }; |
23 | |
24 | } /* boost */ |
25 | |
26 | #endif |
27 |