LUMIERA.clone/tests/stage/model
Ichthyostega a683e689f0 Library: handle chaining of iterator-pipelines
This involves some quite tricky changes in the way types are composed to form an iterator-pipeline.
Some wrappers are added as adaptors or for additional safety-checks, and to provide a builder-API.
Unfortunately, when building a new `IterExplorer` iterator pipeline from an existing pipeline naively,
composing all those types will add several unecessary intermediary wrapper-layers.
Worse even, the handling of `BaseAdapter` prevents the new tuple-zipping iterator
actually to pass-through any `expandChildren()` call.

These issues are a consequence of using templated types, instead of fixed types with an interface;
we can not just determine if some wrapper is present — unless the wrapper itself ''helps by exposing a tag.''
Even while I must admit that the whole packaging and adaptation machinery of `IterExplorer`
looks dangerously complex already, using dedicated type tags for this single purpose
seems like a tenable soulution.
2024-11-24 23:53:38 +01:00
..
canvas-hook-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
element-access-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
view-hook-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
w-link-test.cpp Library: handle chaining of iterator-pipelines 2024-11-24 23:53:38 +01:00
zoom-window-test.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00