laws.cpp 722 B

12345678910111213141516171819202122232425262728
  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. #include <boost/hana/tuple.hpp>
  5. #include <boost/hana/type.hpp>
  6. #include <laws/comparable.hpp>
  7. #include <laws/hashable.hpp>
  8. namespace hana = boost::hana;
  9. struct T;
  10. int main() {
  11. auto types = hana::make_tuple(
  12. hana::type_c<T>,
  13. hana::type_c<T*>,
  14. hana::type_c<T&>,
  15. hana::type_c<T&&>,
  16. hana::type_c<T const>,
  17. hana::type_c<T volatile>,
  18. hana::type_c<T const volatile>
  19. );
  20. hana::test::TestComparable<hana::type_tag>{types};
  21. hana::test::TestHashable<hana::type_tag>{types};
  22. }