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