/* @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 test() { constexpr auto orderable = detail::minimal::orderable; BOOST_HANA_STATIC_ASSERT(less(orderable(0), orderable(1))); BOOST_HANA_STATIC_ASSERT(not_(less(orderable(0), orderable(0)))); BOOST_HANA_STATIC_ASSERT(not_(less(orderable(1), orderable(0)))); // operators using operators::operator<; BOOST_HANA_STATIC_ASSERT(orderable(0) < orderable(1)); BOOST_HANA_STATIC_ASSERT(not_(orderable(0) < orderable(0))); BOOST_HANA_STATIC_ASSERT(not_(orderable(1) < orderable(0))); } int main() { test(); }