pub struct CuvsExtensionPlanner;Expand description
DataFusion physical extension planner for validated cuVS logical nodes.
Calls outside this family remain available to other extension planners.
Trait Implementations§
Source§impl Debug for CuvsExtensionPlanner
impl Debug for CuvsExtensionPlanner
Source§impl ExtensionPlanner for CuvsExtensionPlanner
impl ExtensionPlanner for CuvsExtensionPlanner
Source§fn plan_extension<'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'life6, 'life7, 'async_trait>(
&'life0 self,
_planner: &'life1 dyn PhysicalPlanner,
node: &'life2 dyn UserDefinedLogicalNode,
logical_inputs: &'life3 [&'life4 LogicalPlan],
physical_inputs: &'life5 [Arc<dyn ExecutionPlan>],
session: &'life6 dyn Session,
planning_ctx: &'life7 PhysicalPlanningContext,
) -> Pin<Box<dyn Future<Output = Result<Option<Arc<dyn ExecutionPlan>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
'life5: 'async_trait,
'life6: 'async_trait,
'life7: 'async_trait,
fn plan_extension<'life0, 'life1, 'life2, 'life3, 'life4, 'life5, 'life6, 'life7, 'async_trait>(
&'life0 self,
_planner: &'life1 dyn PhysicalPlanner,
node: &'life2 dyn UserDefinedLogicalNode,
logical_inputs: &'life3 [&'life4 LogicalPlan],
physical_inputs: &'life5 [Arc<dyn ExecutionPlan>],
session: &'life6 dyn Session,
planning_ctx: &'life7 PhysicalPlanningContext,
) -> Pin<Box<dyn Future<Output = Result<Option<Arc<dyn ExecutionPlan>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
'life5: 'async_trait,
'life6: 'async_trait,
'life7: 'async_trait,
Create a physical plan for a
UserDefinedLogicalNode. Read moreSource§fn plan_table_scan<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
_planner: &'life1 dyn PhysicalPlanner,
_scan: &'life2 TableScan,
_session: &'life3 dyn Session,
_planning_ctx: &'life4 PhysicalPlanningContext,
) -> Pin<Box<dyn Future<Output = Result<Option<Arc<dyn ExecutionPlan>>, DataFusionError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Self: Sync + 'async_trait,
fn plan_table_scan<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
_planner: &'life1 dyn PhysicalPlanner,
_scan: &'life2 TableScan,
_session: &'life3 dyn Session,
_planning_ctx: &'life4 PhysicalPlanningContext,
) -> Pin<Box<dyn Future<Output = Result<Option<Arc<dyn ExecutionPlan>>, DataFusionError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Self: Sync + 'async_trait,
Create a physical plan for a
LogicalPlan::TableScan. Read moreAuto Trait Implementations§
impl Freeze for CuvsExtensionPlanner
impl RefUnwindSafe for CuvsExtensionPlanner
impl Send for CuvsExtensionPlanner
impl Sync for CuvsExtensionPlanner
impl Unpin for CuvsExtensionPlanner
impl UnsafeUnpin for CuvsExtensionPlanner
impl UnwindSafe for CuvsExtensionPlanner
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request