LUMIERA.clone/tests/core/steam/engine
Ichthyostega 03b17c78da Buffer-Provider: investigate Problem with embedded type-constructor-arguments
This is a possible extension which frequently comes up again during the design of the Engine.
Basically, the `TypeHandler` in the metadata-descriptor used by the `BufferProvder` could capture
additional context-arguments, which are then later passed to an object instance embedded into the buffer.

Yesterday I attempted to use this feature for a simple demonstration in `NodeBasic_test`,
just to find out that passing additional constructor arguments to the capture fails with
a confusing compilation error message. This failure could be traced down to the function binder;
and what at first sight seemed to be a compiler error, turned out to be a quite logical limitation:
When we »close« some objects of the constructor, but delay the construction itself, we'll have to
store a copy in the constructor-λ. And this implies, that we'll have to change the types
used for instantiation of the compiler, so that the construction-function can be invoked
by passing references from the captured copy of the additional arguments.

When naively passing those forwarded arguments into the std::bind()-call,
the resulting functor will fail at instantiation, when the compiler attempts
to generate the function-call `operator()`

see: https://stackoverflow.com/q/30968573/444796
2024-12-17 00:09:18 +01:00
..
buffer-metadata-key-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
buffer-metadata-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
buffer-provider-protocol-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
calc-stream-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
dispatcher-interface-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
engine-interface-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
job-hash-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
job-planning-pipeline-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
job-planning-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
mock-dispatcher.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
mock-dispatcher.hpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
mock-support-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
node-base-test.cpp Buffer-Provider: investigate Problem with embedded type-constructor-arguments 2024-12-17 00:09:18 +01:00
node-builder-test.cpp Invocation: rearrange the Render Node development tests 2024-12-07 02:17:55 +01:00
node-devel-test.cpp Invocation: rearrange the Render Node development tests 2024-12-07 02:17:55 +01:00
node-feed-test.cpp Invocation: Analysis pertaining to storage for param data 2024-12-07 18:15:44 +01:00
node-link-test.cpp Invocation: rearrange the Render Node development tests 2024-12-07 02:17:55 +01:00
node-meta-test.cpp Invocation: rearrange the Render Node development tests 2024-12-07 02:17:55 +01:00
node-opera-test.cpp Invocation: rearrange the Render Node development tests 2024-12-07 02:17:55 +01:00
node-storage-test.cpp Invocation: rearrange the Render Node development tests 2024-12-07 02:17:55 +01:00
scheduler-interface-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
test-rand-ontology.cpp Invocation: draft a scheme how to provide dummy-operations 2024-11-29 05:42:19 +01:00
test-rand-ontology.hpp Invocation: rearrange the Render Node development tests 2024-12-07 02:17:55 +01:00
testframe-test.cpp Invocation: build test-data manipulation function 2024-11-21 00:50:39 +01:00
testframe.cpp Invocation: implement and test "mixing" of dummy-frames 2024-11-27 15:31:50 +01:00
testframe.hpp Invocation: build test-data manipulation function 2024-11-21 00:50:39 +01:00
timings-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
tracking-heap-block-provider-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00