|
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.
|
Aggregates element references for a single tuple in jh::ranges::zip_view.
More...
#include <jh/ranges/zip_view.h>
Public Attributes | |
| std::tuple< Es... > | elems |
Aggregates element references for a single tuple in jh::ranges::zip_view.
zip_reference_proxy acts as the dereference result of zip_iterator, holding a tuple of element references (or values) from the underlying ranges.
This proxy provides structured binding support by exposing a member get<I>() and a corresponding free function get<I>(const zip_reference_proxy&), making it behave as a tuple-like object compatible with std::get and std::tuple_size.
When dereferencing zip_iterator, each element of the aggregated tuple may be either:
std::reference_wrapper, if wrapped through detail::wrap_element(); std::views::iota). The proxy abstracts over these distinctions so that element access through get<I>() always yields a reference to the underlying element.
| Es | The element types of the aggregated tuple. Each may be a reference, std::reference_wrapper, or value type. |