]>
git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/hana/example/optional/applicative.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)
5 #include <boost/hana/ap.hpp>
6 #include <boost/hana/assert.hpp>
7 #include <boost/hana/equal.hpp>
8 #include <boost/hana/optional.hpp>
9 namespace hana
= boost::hana
;
12 constexpr char next(char c
) { return c
+ 1; }
14 static_assert(hana::ap(hana::just(next
), hana::just('x')) == hana::just('y'), "");
15 BOOST_HANA_CONSTANT_CHECK(hana::ap(hana::nothing
, hana::just('x')) == hana::nothing
);
16 BOOST_HANA_CONSTANT_CHECK(hana::ap(hana::just(next
), hana::nothing
) == hana::nothing
);
17 BOOST_HANA_CONSTANT_CHECK(hana::ap(hana::nothing
, hana::nothing
) == hana::nothing
);