pub struct PushdownRegistry { /* private fields */ }Expand description
Registry of all pushdown rules
The registry tries rules in order and returns the first successful conversion. Rules are ordered from most specific to most general.
Implementations§
Source§impl PushdownRegistry
impl PushdownRegistry
Sourcepub fn register(&mut self, rule: Box<dyn PushdownRule>)
pub fn register(&mut self, rule: Box<dyn PushdownRule>)
Register a custom pushdown rule
Sourcepub fn try_pushdown(
&self,
expr: &Expression,
schema: &Schema,
exec_ctx: Option<&ExecutionContext>,
) -> (Option<Box<dyn StorageExpr>>, bool)
pub fn try_pushdown( &self, expr: &Expression, schema: &Schema, exec_ctx: Option<&ExecutionContext>, ) -> (Option<Box<dyn StorageExpr>>, bool)
Try to push down an expression to storage layer
Returns (Option<StorageExpr>, needs_memory_filter)
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for PushdownRegistry
impl !UnwindSafe for PushdownRegistry
impl Freeze for PushdownRegistry
impl Send for PushdownRegistry
impl Sync for PushdownRegistry
impl Unpin for PushdownRegistry
impl UnsafeUnpin for PushdownRegistry
Blanket Implementations§
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