Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
ExtensionPlanner in datafusion::physical_plan::planner - Rust
[go: Go Back, main page]

pub trait ExtensionPlanner {
    fn plan_extension<'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'life6, 'async_trait>(
        &'life0 self,
        planner: &'life1 dyn PhysicalPlanner,
        node: &'life2 dyn UserDefinedLogicalNode,
        logical_inputs: &'life3 [&'life4 LogicalPlan],
        physical_inputs: &'life5 [Arc<dyn ExecutionPlan>],
        session_state: &'life6 SessionState
    ) -> Pin<Box<dyn Future<Output = Result<Option<Arc<dyn ExecutionPlan>>>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        'life1: 'async_trait,
        'life2: 'async_trait,
        'life3: 'async_trait,
        'life4: 'async_trait,
        'life5: 'async_trait,
        'life6: 'async_trait,
        Self: 'async_trait
; }
Expand description

This trait exposes the ability to plan an ExecutionPlan out of a LogicalPlan.

Required Methods

Create a physical plan for a UserDefinedLogicalNode.

input_dfschema: the logical plan schema for the inputs to this node

Returns an error when the planner knows how to plan the concrete implementation of node but errors while doing so.

Returns None when the planner does not know how to plan the node and wants to delegate the planning to another ExtensionPlanner.

Implementors