1 // Copyright Louis Dionne 2013-2017 2 // Distributed under the Boost Software License, Version 1.0. 3 // (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt) 4 5 #include <boost/hana/assert.hpp> 6 #include <boost/hana/back.hpp> 7 #include <boost/hana/drop_front.hpp> 8 #include <boost/hana/equal.hpp> 9 #include <boost/hana/front.hpp> 10 #include <boost/hana/integral_constant.hpp> 11 #include <boost/hana/is_empty.hpp> 12 #include <boost/hana/not.hpp> 13 #include <boost/hana/range.hpp> 14 namespace hana = boost::hana; 15 16 17 constexpr auto r = hana::make_range(hana::int_c<0>, hana::int_c<1000>); 18 BOOST_HANA_CONSTANT_CHECK(hana::front(r) == hana::int_c<0>); 19 BOOST_HANA_CONSTANT_CHECK(hana::back(r) == hana::int_c<999>); 20 BOOST_HANA_CONSTANT_CHECK(hana::drop_front(r) == hana::make_range(hana::int_c<1>, hana::int_c<1000>)); 21 BOOST_HANA_CONSTANT_CHECK(!hana::is_empty(r)); 22 BOOST_HANA_CONSTANT_CHECK(hana::is_empty(hana::make_range(hana::int_c<3>, hana::int_c<3>))); 23 main()24int main() { } 25