Skip to content

Commit 174e08b

Browse files
authored
Minor: improve Analyzer docs (#13798)
1 parent fe53eaf commit 174e08b

File tree

1 file changed

+7
-4
lines changed
  • datafusion/optimizer/src/analyzer

1 file changed

+7
-4
lines changed

datafusion/optimizer/src/analyzer/mod.rs

+7-4
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ pub mod type_coercion;
5252
/// [`AnalyzerRule`]s transform [`LogicalPlan`]s in some way to make
5353
/// the plan valid prior to the rest of the DataFusion optimization process.
5454
///
55-
/// This is different than an [`OptimizerRule`](crate::OptimizerRule)
55+
/// `AnalyzerRule`s are different than an [`OptimizerRule`](crate::OptimizerRule)s
5656
/// which must preserve the semantics of the `LogicalPlan`, while computing
5757
/// results in a more optimal way.
5858
///
@@ -72,10 +72,13 @@ pub trait AnalyzerRule: Debug {
7272
fn name(&self) -> &str;
7373
}
7474

75-
/// A rule-based Analyzer.
75+
/// Rule-based Analyzer.
7676
///
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.
7982
#[derive(Clone, Debug)]
8083
pub struct Analyzer {
8184
/// Expr --> Function writes to apply prior to analysis passes

0 commit comments

Comments
 (0)