Struct datafusion_optimizer::analyzer::Analyzer
source · pub struct Analyzer {
pub rules: Vec<Arc<dyn AnalyzerRule + Send + Sync>>,
}
Expand description
A rule-based Analyzer.
Fields§
§rules: Vec<Arc<dyn AnalyzerRule + Send + Sync>>
All rules to apply
Implementations§
source§impl Analyzer
impl Analyzer
sourcepub fn with_rules(rules: Vec<Arc<dyn AnalyzerRule + Send + Sync>>) -> Self
pub fn with_rules(rules: Vec<Arc<dyn AnalyzerRule + Send + Sync>>) -> Self
Create a new analyzer with the given rules
sourcepub fn execute_and_check<F>(
&self,
plan: &LogicalPlan,
config: &ConfigOptions,
observer: F
) -> Result<LogicalPlan>where
F: FnMut(&LogicalPlan, &dyn AnalyzerRule),
pub fn execute_and_check<F>( &self, plan: &LogicalPlan, config: &ConfigOptions, observer: F ) -> Result<LogicalPlan>where F: FnMut(&LogicalPlan, &dyn AnalyzerRule),
Analyze the logical plan by applying analyzer rules, and do necessary check and fail the invalid plans
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for Analyzer
impl Send for Analyzer
impl Sync for Analyzer
impl Unpin for Analyzer
impl !UnwindSafe for Analyzer
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