Struct as_common_tuple_indirect_fn

Struct Documentation

struct as_common_tuple_indirect_fn

Utility type to adapt the zip output.

Public Functions

template<class ...Its>
inline constexpr auto operator()(const Its&... its) const noexcept((noexcept(ranges::iter_reference_t<Its>(*its)) && ...))

Reference overload.

template<class ...Its>
inline constexpr auto operator()(ranges::move_tag, const Its&... its) const noexcept((noexcept(ranges::iter_rvalue_reference_t<Its>(ranges::iter_move(its))) && ...))

Move overload.

template<class ...Its>
inline constexpr auto operator()(ranges::copy_tag, Its...) const -> std::tuple<ranges::iter_value_t<Its>...>

Copy overload.

This is needed for ranges_value_t to return std::tuple when this object is passed to a zip_with_view.