summaryrefslogtreecommitdiffstats
path: root/src/boost/libs/hof/test/tap.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/boost/libs/hof/test/tap.cpp')
-rw-r--r--src/boost/libs/hof/test/tap.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/boost/libs/hof/test/tap.cpp b/src/boost/libs/hof/test/tap.cpp
new file mode 100644
index 00000000..25a92e4d
--- /dev/null
+++ b/src/boost/libs/hof/test/tap.cpp
@@ -0,0 +1,25 @@
+/*=============================================================================
+ Copyright (c) 2017 Paul Fultz II
+ tap.cpp
+ Distributed under the Boost Software License, Version 1.0. (See accompanying
+ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+==============================================================================*/
+#include <boost/hof/tap.hpp>
+#include "test.hpp"
+
+struct sum_f
+{
+ template<class T, class U>
+ constexpr T operator()(T x, U y) const
+ {
+ return x+y;
+ }
+};
+
+static constexpr boost::hof::pipable_adaptor<sum_f> sum = {};
+// TODO: Test constexpr
+BOOST_HOF_TEST_CASE()
+{
+ BOOST_HOF_TEST_CHECK(3 == (1 | sum(2)));
+ BOOST_HOF_TEST_CHECK(5 == (1 | sum(2) | boost::hof::tap([](int i) { BOOST_HOF_TEST_CHECK(3 == i); }) | sum(2)));
+}