2
0
mirror of https://github.com/boostorg/hana.git synced 2026-02-23 03:42:09 +00:00
Files
hana/test/traversable/sequence.cpp
2014-07-14 10:40:45 -04:00

32 lines
932 B
C++

/*
@copyright Louis Dionne 2014
Distributed under the Boost Software License, Version 1.0.
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
*/
#include <boost/hana/traversable.hpp>
#include <boost/hana/detail/minimal/applicative.hpp>
#include <boost/hana/detail/minimal/comparable.hpp>
#include <boost/hana/detail/minimal/traversable.hpp>
#include <boost/hana/detail/static_assert.hpp>
using namespace boost::hana;
template <typename mcd>
void test() {
constexpr auto traversable = detail::minimal::traversable<mcd>;
constexpr auto applicative = detail::minimal::applicative<>;
constexpr auto comparable = detail::minimal::comparable<>;
BOOST_HANA_STATIC_ASSERT(
sequence<detail::minimal::Applicative<>>(traversable(applicative(comparable(1))))
==
applicative(traversable(comparable(1)))
);
}
int main() {
test<Traversable::traverse_mcd>();
}