/* @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 using namespace boost::hana; template void tests() { // cons { BOOST_HANA_CONSTANT_ASSERT(equal( cons(integral, integer_list), integer_list )); BOOST_HANA_CONSTANT_ASSERT(equal( cons(integral, integer_list), integer_list )); BOOST_HANA_CONSTANT_ASSERT(equal( cons(integral, integer_list), integer_list )); BOOST_HANA_CONSTANT_ASSERT(equal( cons(integral, integer_list), integer_list )); } // nil { BOOST_HANA_CONSTANT_ASSERT(equal(nil, integer_list)); BOOST_HANA_CONSTANT_ASSERT(equal(nil, integer_list)); BOOST_HANA_CONSTANT_ASSERT(equal(nil, integer_list)); } // laws { BOOST_HANA_CONSTANT_ASSERT(List_laws( integer_list, integer_list, integer_list, integer_list, integer_list, integer_list )); } } int main() { tests(); tests(); tests(); tests(); }