diff options
Diffstat (limited to 'boost/hana/concept/logical.hpp')
-rw-r--r-- | boost/hana/concept/logical.hpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/boost/hana/concept/logical.hpp b/boost/hana/concept/logical.hpp index 74c0fb3a51..ecfd0a4ebe 100644 --- a/boost/hana/concept/logical.hpp +++ b/boost/hana/concept/logical.hpp @@ -15,6 +15,7 @@ Distributed under the Boost Software License, Version 1.0. #include <boost/hana/config.hpp> #include <boost/hana/core/default.hpp> #include <boost/hana/core/tag_of.hpp> +#include <boost/hana/detail/integral_constant.hpp> #include <boost/hana/eval_if.hpp> #include <boost/hana/not.hpp> #include <boost/hana/while.hpp> @@ -22,12 +23,13 @@ Distributed under the Boost Software License, Version 1.0. BOOST_HANA_NAMESPACE_BEGIN template <typename L> - struct Logical { - using Tag = typename tag_of<L>::type; - static constexpr bool value = !is_default<eval_if_impl<Tag>>::value && - !is_default<not_impl<Tag>>::value && - !is_default<while_impl<Tag>>::value; - }; + struct Logical + : hana::integral_constant<bool, + !is_default<eval_if_impl<typename tag_of<L>::type>>::value && + !is_default<not_impl<typename tag_of<L>::type>>::value && + !is_default<while_impl<typename tag_of<L>::type>>::value + > + { }; BOOST_HANA_NAMESPACE_END #endif // !BOOST_HANA_CONCEPT_LOGICAL_HPP |