32 using V1 = utils::RddElementType<R1>;
33 using V2 = utils::RddElementType<R2>;
37 "Instance of ZippedRdd does not satisfy Rdd concept.");
38 if (std::ranges::distance(
prev1) != std::ranges::distance(
prev2)) {
39 throw std::runtime_error(
"R1 and R2 do not have the same number of splits.");
45 std::function<std::pair<V1, V2>(
const V1&)> func = [
cnt,
60 constexpr auto beginImpl()
const {
return std::ranges::begin(splits_); }
62 constexpr auto endImpl()
const {
return std::ranges::end(splits_); }
65 using ZippedViewType =
66 decltype(std::declval<R1>().front() |
67 std::views::transform(std::declval<std::function<std::pair<V1, V2>(
const V1&)>>()));
68 std::vector<ViewSplit<ZippedViewType>> splits_{};