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
5using namespace duckdb;
6using namespace std;
7
8unique_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