/* @copyright Louis Dionne 2014 Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt) */ #include #include #include #include #include using namespace boost::hana; template constexpr auto key = detail::minimal::comparable<>(i); template constexpr auto value = detail::minimal::comparable<>(i + 100); template constexpr auto p = detail::minimal::product<>(key, value); int main() { BOOST_HANA_CONSTANT_ASSERT(values(map()) == list()); BOOST_HANA_CONSTEXPR_ASSERT(values(map(p<1, 1>)) == list(value<1>)); BOOST_HANA_CONSTEXPR_ASSERT(values(map(p<1, 1>, p<2, 2>)) == list(value<1>, value<2>)); BOOST_HANA_CONSTEXPR_ASSERT(values(map(p<1, 1>, p<2, 2>, p<3, 3>)) == list(value<1>, value<2>, value<3>)); }