|
JH-Toolkit v1.4.1
An engineering-oriented C++20 toolkit with duck-typed concepts, static design, async coroutines, and semantic containers — header-only, RTTI-free, and concurrency-friendly.
|
Explicit non-consuming transform adaptor preserving reentrancy. More...
#include "jh/ranges/vis_transform_view.h"Go to the source code of this file.
Namespaces | |
| namespace | jh::ranges |
| Semantic pipeline namespace for JH range operations. | |
| namespace | jh::ranges::views |
| Range view adaptor implementations with explicit semantic control. | |
Variables | |
| constexpr detail::vis_transform_fn | jh::ranges::views::vis_transform {} |
The user-facing vis_transform adaptor. | |
Explicit non-consuming transform adaptor preserving reentrancy.
The jh::ranges::views::vis_transform adaptor provides an explicit, observation-only variant of std::views::transform. It guarantees non-consuming behavior for reentrant ranges and is used internally by adaptors such as jh::ranges::views::flatten.
Unlike the standard adaptor, which treats every transformation as consumptive, vis_transform ensures that its result remains reentrant and stable whenever the underlying range allows it.
jh::ranges::views::common() and jh::ranges::to. A typical usage chain combining multiple adaptors and collection:
This form requires no intermediate collect() adaptor — the pipeline remains reentrant, and to<> performs direct construction.
1.3.x
2025