diff --git a/src/steam/engine/param-weaving-pattern.hpp b/src/steam/engine/param-weaving-pattern.hpp
index a4d97b00f..5341d37e8 100644
--- a/src/steam/engine/param-weaving-pattern.hpp
+++ b/src/steam/engine/param-weaving-pattern.hpp
@@ -113,9 +113,11 @@ namespace engine {
typename ChainCons::NewFrame
buildParamDataBlock (TurnoutSystem& turnoutSys)
{
- auto invoke = [&](auto& fun) { return fun(turnoutSys); };
- ParamTup params = lib::meta::mapEach(functors_, invoke);
- //////////////////////////////////////////////////////////////OOO now need to extract them
+ return std::apply ([&](auto&&... paramFun)
+ { // invoke parameter-functors and build NewFrame from results
+ return ChainCons::build (paramFun (turnoutSys) ...);
+ }
+ ,functors_);
}
diff --git a/tests/core/steam/engine/node-feed-test.cpp b/tests/core/steam/engine/node-feed-test.cpp
index 6ef694440..0c964c1f2 100644
--- a/tests/core/steam/engine/node-feed-test.cpp
+++ b/tests/core/steam/engine/node-feed-test.cpp
@@ -131,6 +131,9 @@ SHOW_EXPR(v0)
SHOW_EXPR(v1)
auto paramBlock = spec.buildParamDataBlock (turnoutSys);
+SHOW_EXPR(paramBlock)
+SHOW_EXPR(paramBlock.get<0>())
+SHOW_EXPR(paramBlock.get<1>())
TODO ("implement a simple Builder for ParamAgent-Node");
TODO ("then use both together to demonstrate a param data feed here");
diff --git a/wiki/thinkPad.ichthyo.mm b/wiki/thinkPad.ichthyo.mm
index b5a9ba876..bc9c9745a 100644
--- a/wiki/thinkPad.ichthyo.mm
+++ b/wiki/thinkPad.ichthyo.mm
@@ -94325,13 +94325,31 @@ Date: Thu Apr 20 18:53:17 2023 +0200
-
-
-
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+ also den gleichen Kniff, auf dem auch lib::meta::forEach und lib::meta::mapEach beruhen: man wendet per std::apply ein generisches variadisches Lambda auf die Tupel-Elemente an
+