1 | #include "duckdb/execution/operator/join/physical_blockwise_nl_join.hpp" |
---|---|
2 | #include "duckdb/execution/physical_plan_generator.hpp" |
3 | #include "duckdb/planner/operator/logical_any_join.hpp" |
4 | |
5 | using namespace duckdb; |
6 | using namespace std; |
7 | |
8 | unique_ptr<PhysicalOperator> PhysicalPlanGenerator::CreatePlan(LogicalAnyJoin &op) { |
9 | // first visit the child nodes |
10 | assert(op.children.size() == 2); |
11 | assert(op.condition); |
12 | |
13 | auto left = CreatePlan(*op.children[0]); |
14 | auto right = CreatePlan(*op.children[1]); |
15 | |
16 | // create the blockwise NL join |
17 | return make_unique<PhysicalBlockwiseNLJoin>(op, move(left), move(right), move(op.condition), op.join_type); |
18 | } |
19 |