Trait datafusion::physical_plan::planner::ExtensionPlanner [−][src]
pub trait ExtensionPlanner { fn plan_extension(
&self,
node: &dyn UserDefinedLogicalNode,
inputs: &[Arc<dyn ExecutionPlan>],
ctx_state: &ExecutionContextState
) -> Result<Option<Arc<dyn ExecutionPlan>>>; }
This trait exposes the ability to plan an ExecutionPlan
out of a LogicalPlan
.
Required methods
fn plan_extension(
&self,
node: &dyn UserDefinedLogicalNode,
inputs: &[Arc<dyn ExecutionPlan>],
ctx_state: &ExecutionContextState
) -> Result<Option<Arc<dyn ExecutionPlan>>>
[src]
&self,
node: &dyn UserDefinedLogicalNode,
inputs: &[Arc<dyn ExecutionPlan>],
ctx_state: &ExecutionContextState
) -> Result<Option<Arc<dyn ExecutionPlan>>>
Create a physical plan for a UserDefinedLogicalNode
.
This errors when the planner knows how to plan the concrete implementation of node
but errors while doing so, and None
when the planner does not know how to plan the node
and wants to delegate the planning to another ExtensionPlanner
.