1// Copyright Louis Dionne 2013-2022
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/detail/fast_and.hpp>
6namespace hana = boost::hana;
7
8
9static_assert(hana::detail::fast_and<>::value, "");
10static_assert(hana::detail::fast_and<true>::value, "");
11static_assert(!hana::detail::fast_and<false>::value, "");
12
13static_assert(hana::detail::fast_and<true, true>::value, "");
14static_assert(!hana::detail::fast_and<true, false>::value, "");
15static_assert(!hana::detail::fast_and<false, true>::value, "");
16static_assert(!hana::detail::fast_and<false, false>::value, "");
17
18static_assert(hana::detail::fast_and<true, true, true>::value, "");
19static_assert(!hana::detail::fast_and<true, true, false>::value, "");
20static_assert(!hana::detail::fast_and<true, false, true>::value, "");
21static_assert(!hana::detail::fast_and<true, false, false>::value, "");
22static_assert(!hana::detail::fast_and<false, true, true>::value, "");
23static_assert(!hana::detail::fast_and<false, true, false>::value, "");
24static_assert(!hana::detail::fast_and<false, false, true>::value, "");
25static_assert(!hana::detail::fast_and<false, false, false>::value, "");
26
27static_assert(hana::detail::fast_and<true, true, true, true, true, true>::value, "");
28static_assert(!hana::detail::fast_and<true, true, true, false, true, true>::value, "");
29static_assert(!hana::detail::fast_and<true, true, true, true, true, false>::value, "");
30static_assert(!hana::detail::fast_and<false, true, true, true, true, true>::value, "");
31
32int main() { }
33

source code of boost/libs/hana/test/detail/fast_and.cpp