| 1139 | } |
| 1140 | |
| 1141 | QueryPlan QueryPlan::clone() const |
| 1142 | { |
| 1143 | QueryPlan result; |
| 1144 | result.nodes.emplace_back(Node{ .step = {}, .children = {} }); |
| 1145 | auto * current_subplan_copy_root = &result.nodes.back(); |
| 1146 | |
| 1147 | result.cloneInplace(current_subplan_copy_root, root); |
| 1148 | result.root = current_subplan_copy_root; |
| 1149 | |
| 1150 | return result; |
| 1151 | } |
| 1152 | |
| 1153 | void QueryPlan::cloneSubplanAndReplace(Node * node_to_replace, Node * subplan_root, Nodes & nodes) |
| 1154 | { |