| 664 | } |
| 665 | |
| 666 | std::unique_ptr<DirectExpressionStep> CreateDirectComprehensionStep( |
| 667 | size_t iter_slot, size_t iter2_slot, size_t accu_slot, |
| 668 | std::unique_ptr<DirectExpressionStep> range, |
| 669 | std::unique_ptr<DirectExpressionStep> accu_init, |
| 670 | std::unique_ptr<DirectExpressionStep> loop_step, |
| 671 | std::unique_ptr<DirectExpressionStep> condition_step, |
| 672 | std::unique_ptr<DirectExpressionStep> result_step, bool shortcircuiting, |
| 673 | int64_t expr_id) { |
| 674 | return std::make_unique<ComprehensionDirectStep>( |
| 675 | iter_slot, iter2_slot, accu_slot, std::move(range), std::move(accu_init), |
| 676 | std::move(loop_step), std::move(condition_step), std::move(result_step), |
| 677 | shortcircuiting, expr_id); |
| 678 | } |
| 679 | |
| 680 | std::unique_ptr<ExpressionStep> CreateComprehensionFinishStep(size_t accu_slot, |
| 681 | int64_t expr_id) { |
no outgoing calls