compose.cpp 617 B

123456789101112131415161718192021
  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/assert.hpp>
  5. #include <boost/hana/config.hpp>
  6. #include <boost/hana/functional/compose.hpp>
  7. namespace hana = boost::hana;
  8. int main() {
  9. BOOST_HANA_CONSTEXPR_LAMBDA auto to_char = [](int x) {
  10. return static_cast<char>(x + 48);
  11. };
  12. BOOST_HANA_CONSTEXPR_LAMBDA auto increment = [](auto x) {
  13. return x + 1;
  14. };
  15. BOOST_HANA_CONSTEXPR_CHECK(hana::compose(to_char, increment)(3) == '4');
  16. }