pub struct LookupJoinRewriteRule { /* private fields */ }Expand description
Rewrites standard JOIN nodes that reference a lookup table into
LookupJoinNode extension nodes.
Implementations§
Source§impl LookupJoinRewriteRule
impl LookupJoinRewriteRule
Sourcepub fn new(lookup_tables: HashMap<String, LookupTableInfo>) -> Self
pub fn new(lookup_tables: HashMap<String, LookupTableInfo>) -> Self
Creates a new rewrite rule with the given set of registered lookup tables.
Trait Implementations§
Source§impl Debug for LookupJoinRewriteRule
impl Debug for LookupJoinRewriteRule
Source§impl OptimizerRule for LookupJoinRewriteRule
impl OptimizerRule for LookupJoinRewriteRule
Source§fn apply_order(&self) -> Option<ApplyOrder>
fn apply_order(&self) -> Option<ApplyOrder>
How should the rule be applied by the optimizer? See comments on
ApplyOrder for details. Read moreSource§fn rewrite(
&self,
plan: LogicalPlan,
_config: &dyn OptimizerConfig,
) -> Result<Transformed<LogicalPlan>>
fn rewrite( &self, plan: LogicalPlan, _config: &dyn OptimizerConfig, ) -> Result<Transformed<LogicalPlan>>
Try to rewrite
plan to an optimized form, returning Transformed::yes
if the plan was rewritten and Transformed::no if it was not.Source§fn supports_rewrite(&self) -> bool
fn supports_rewrite(&self) -> bool
👎Deprecated since 47.0.0:
This method is no longer used
Does this rule support rewriting owned plans (rather than by reference)?
Auto Trait Implementations§
impl Freeze for LookupJoinRewriteRule
impl RefUnwindSafe for LookupJoinRewriteRule
impl Send for LookupJoinRewriteRule
impl Sync for LookupJoinRewriteRule
impl Unpin for LookupJoinRewriteRule
impl UnsafeUnpin for LookupJoinRewriteRule
impl UnwindSafe for LookupJoinRewriteRule
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
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 more