/* @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 using namespace boost::hana; struct T; struct U; int main() { // equal { BOOST_HANA_CONSTANT_ASSERT(equal(type, type)); BOOST_HANA_CONSTANT_ASSERT(not_(equal(type, type))); BOOST_HANA_CONSTANT_ASSERT(not_(equal(type, type))); BOOST_HANA_CONSTANT_ASSERT(not_(equal(type, type))); BOOST_HANA_CONSTANT_ASSERT(equal(type, type)); BOOST_HANA_CONSTANT_ASSERT(equal(type, type)); BOOST_HANA_CONSTANT_ASSERT(not_(equal(type, type))); BOOST_HANA_CONSTANT_ASSERT(not_(equal(type, type))); BOOST_HANA_CONSTANT_ASSERT(equal(type, type)); } // laws { BOOST_HANA_CONSTANT_ASSERT(Comparable_laws( type, type, type, type, type )); } }