From 342d08ab1d9b07563dcad1f177794c7be3d627bd Mon Sep 17 00:00:00 2001 From: Denis Blank Date: Tue, 3 Oct 2017 18:33:44 +0200 Subject: [PATCH] Simplify static_for_each_in --- include/continuable/detail/testing.hpp | 1 + include/continuable/detail/traits.hpp | 9 ++------- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/include/continuable/detail/testing.hpp b/include/continuable/detail/testing.hpp index 9f2559c..1393d65 100644 --- a/include/continuable/detail/testing.hpp +++ b/include/continuable/detail/testing.hpp @@ -48,6 +48,7 @@ void assert_async_completion(C&& continuable) { // Workaround for our known GCC bug. util::unused(std::forward(args)...); }); + ASSERT_TRUE(*called); } diff --git a/include/continuable/detail/traits.hpp b/include/continuable/detail/traits.hpp index c9b6de4..52f2dbe 100644 --- a/include/continuable/detail/traits.hpp +++ b/include/continuable/detail/traits.hpp @@ -346,14 +346,9 @@ constexpr void static_for_each_in(Sequenceable&& sequenceable, Handler&& handler) { unpack( std::forward(sequenceable), [&](auto&&... entries) mutable { - auto consume = [&](auto&& entry) mutable { - handler(std::forward(entry)); - return 0; - }; // Apply the consume function to every entry inside the pack - auto deduce = {0, consume(std::forward(entries))...}; - (void)deduce; - (void)consume; + std::initializer_list{0, + ((void)handler(std::forward(entries)), 0)...}; }); }