]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/hana/test/ext/std/ratio/laws.cpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / libs / hana / test / ext / std / ratio / laws.cpp
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/ratio.hpp>
6 #include <boost/hana/tuple.hpp>
7
8 #include <laws/comparable.hpp>
9 #include <laws/euclidean_ring.hpp>
10 #include <laws/group.hpp>
11 #include <laws/monoid.hpp>
12 #include <laws/orderable.hpp>
13 #include <laws/ring.hpp>
14
15 #include <ratio>
16 namespace hana = boost::hana;
17
18
19 int main() {
20 auto ratios = hana::make_tuple(
21 std::ratio<0>{}
22 , std::ratio<1, 3>{}
23 , std::ratio<1, 2>{}
24 , std::ratio<2, 6>{}
25 , std::ratio<3, 1>{}
26 , std::ratio<7, 8>{}
27 , std::ratio<3, 5>{}
28 , std::ratio<2, 1>{}
29 );
30
31 hana::test::TestComparable<hana::ext::std::ratio_tag>{ratios};
32 hana::test::TestOrderable<hana::ext::std::ratio_tag>{ratios};
33 hana::test::TestMonoid<hana::ext::std::ratio_tag>{ratios};
34 hana::test::TestGroup<hana::ext::std::ratio_tag>{ratios};
35 hana::test::TestRing<hana::ext::std::ratio_tag>{ratios};
36 hana::test::TestEuclideanRing<hana::ext::std::ratio_tag>{ratios};
37 }