orderedConcatGroups.add(enum2concatGroup.get(enumeration)); for (List<PlanImplementation.ConcatenationGroupDescriptor> concatGroupCombo : RheemCollections.streamedCrossProduct(orderedConcatGroups)) { }); for (List<PlanImplementation> planCombo : RheemCollections.streamedCrossProduct(groupPlans)) { PlanImplementation basePlan = planCombo.get(0); List<PlanImplementation> targetPlans = planCombo.subList(0, planCombo.size());
if (childSolutionSetCombination.size() < 2) continue; // only combine when we have more than on child solution for (List<Tree> solutionCombination : RheemCollections.streamedCrossProduct(childSolutionSetCombination)) { final Tree tree = ChannelConversionGraph.this.mergeTrees(solutionCombination); if (tree != null) {