CartesianProduct
is the physical plan for Cartesian products.
More...
#include <plan/CartesianProduct.h>
|
PlanNode * | get_child (size_t i) const |
| Utility function to get the raw pointer of i-th child of this physical plan. More...
|
|
CartesianProduct
is the physical plan for Cartesian products.
This physical plan should remember its child plans (left and right).
◆ ~CartesianProduct()
taco::CartesianProduct::~CartesianProduct |
( |
| ) |
|
|
override |
◆ CartesianProduct()
taco::CartesianProduct::CartesianProduct |
( |
std::unique_ptr< PlanNode > && |
left, |
|
|
std::unique_ptr< PlanNode > && |
right |
|
) |
| |
|
private |
◆ Create()
◆ create_exec_state()
std::unique_ptr< PlanExecState > taco::CartesianProduct::create_exec_state |
( |
| ) |
const |
|
overridevirtual |
Create the corresponding execution state for the physical plan so that it can be used as physical scan operator later.
This should create an execution state matching the current physical plan, all its descendant execution states, and link them together.
Implements taco::PlanNode.
◆ get_output_schema()
const Schema * taco::CartesianProduct::get_output_schema |
( |
| ) |
const |
|
overridevirtual |
Each physical plan should link a schema for its output relation, incidating what fields are included in its output records.
This function returns the output schema of this physical plan.
NOTE: if you want to create a schema owned by the plan, you should make sure ComputeLayout()
is called upon the newly created plan so that it can be used in serialize/deserialize records.
Implements taco::PlanNode.
◆ node_properties_to_string()
void taco::CartesianProduct::node_properties_to_string |
( |
std::string & |
buf, |
|
|
int |
indent |
|
) |
| const |
|
overridevirtual |
◆ CartesianProductState
The documentation for this class was generated from the following files: