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/ext/std/array.hpp>
6
7 #include <boost/hana/tuple.hpp>
8
9 #include <laws/base.hpp>
10 #include <laws/searchable.hpp>
11
12 #include <array>
13 namespace hana = boost::hana;
14
15
16 template <int ...i>
array()17 constexpr auto array() { return std::array<int, sizeof...(i)>{{i...}}; }
18
main()19 int main() {
20 auto eq_arrays = hana::make_tuple(
21 std::array<hana::test::ct_eq<0>, 0>{}
22 , std::array<hana::test::ct_eq<0>, 1>{}
23 , std::array<hana::test::ct_eq<0>, 2>{}
24 , std::array<hana::test::ct_eq<0>, 3>{}
25 , std::array<hana::test::ct_eq<0>, 4>{}
26 );
27
28 auto eq_keys = hana::make_tuple(hana::test::ct_eq<0>{});
29
30 hana::test::TestSearchable<hana::ext::std::array_tag>{eq_arrays, eq_keys};
31 }
32