pub trait ExecutionPlanner: Send + Sync {
type Policy: RuntimePolicy;
// Required method
fn build_plan(
&self,
request: PlanBuildRequest<'_, Self::Policy>,
) -> Result<ExecutionPlan, VNextError>;
}Expand description
Pure planner boundary. Execution consumes the immutable plan and performs no capability/backend selection in the token loop.
Required Associated Types§
type Policy: RuntimePolicy
Required Methods§
fn build_plan( &self, request: PlanBuildRequest<'_, Self::Policy>, ) -> Result<ExecutionPlan, VNextError>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".