File tree 1 file changed +7
-4
lines changed
datafusion/optimizer/src/analyzer
1 file changed +7
-4
lines changed Original file line number Diff line number Diff line change @@ -52,7 +52,7 @@ pub mod type_coercion;
52
52
/// [`AnalyzerRule`]s transform [`LogicalPlan`]s in some way to make
53
53
/// the plan valid prior to the rest of the DataFusion optimization process.
54
54
///
55
- /// This is different than an [`OptimizerRule`](crate::OptimizerRule)
55
+ /// `AnalyzerRule`s are different than an [`OptimizerRule`](crate::OptimizerRule)s
56
56
/// which must preserve the semantics of the `LogicalPlan`, while computing
57
57
/// results in a more optimal way.
58
58
///
@@ -72,10 +72,13 @@ pub trait AnalyzerRule: Debug {
72
72
fn name ( & self ) -> & str ;
73
73
}
74
74
75
- /// A rule -based Analyzer.
75
+ /// Rule -based Analyzer.
76
76
///
77
- /// An `Analyzer` transforms a `LogicalPlan`
78
- /// prior to the rest of the DataFusion optimization process.
77
+ /// Applies [`FunctionRewrite`]s and [`AnalyzerRule`]s to transform a
78
+ /// [`LogicalPlan`] in preparation for execution.
79
+ ///
80
+ /// For example, the `Analyzer` applies type coercion to ensure the types of
81
+ /// operands match the types required by functions.
79
82
#[ derive( Clone , Debug ) ]
80
83
pub struct Analyzer {
81
84
/// Expr --> Function writes to apply prior to analysis passes
You can’t perform that action at this time.
0 commit comments