Skip to content

Commit bb5d51a

Browse files
committed
refactor: update ParserOptions to use default method for initialization
1 parent cf0650e commit bb5d51a

File tree

3 files changed

+18
-17
lines changed

3 files changed

+18
-17
lines changed

datafusion/sql/src/planner.rs

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -43,15 +43,10 @@ pub use datafusion_expr::planner::ContextProvider;
4343
/// SQL parser options
4444
#[derive(Debug, Clone, Copy)]
4545
pub struct ParserOptions {
46-
/// If true, parse float as decimal
4746
pub parse_float_as_decimal: bool,
48-
/// If true, normalize identifiers
4947
pub enable_ident_normalization: bool,
50-
/// If true, support varchar with length
5148
pub support_varchar_with_length: bool,
52-
/// If true, normalize option values
5349
pub enable_options_value_normalization: bool,
54-
/// If true, collect spans during parsing
5550
pub collect_spans: bool,
5651
}
5752

@@ -61,7 +56,7 @@ impl ParserOptions {
6156
/// # Examples
6257
///
6358
/// ```
64-
/// use datafusion::sql::planner::ParserOptions;
59+
/// use datafusion_sql::planner::ParserOptions;
6560
/// let opts = ParserOptions::new();
6661
/// assert_eq!(opts.parse_float_as_decimal(), false);
6762
/// assert_eq!(opts.enable_ident_normalization(), true);
@@ -81,7 +76,7 @@ impl ParserOptions {
8176
/// # Examples
8277
///
8378
/// ```
84-
/// use datafusion::sql::planner::ParserOptions;
79+
/// use datafusion_sql::planner::ParserOptions;
8580
/// let opts = ParserOptions::new().with_parse_float_as_decimal(true);
8681
/// assert_eq!(opts.parse_float_as_decimal(), true);
8782
/// ```
@@ -95,7 +90,7 @@ impl ParserOptions {
9590
/// # Examples
9691
///
9792
/// ```
98-
/// use datafusion::sql::planner::ParserOptions;
93+
/// use datafusion_sql::planner::ParserOptions;
9994
/// let opts = ParserOptions::new().with_enable_ident_normalization(false);
10095
/// assert_eq!(opts.enable_ident_normalization(), false);
10196
/// ```
@@ -148,6 +143,12 @@ impl ParserOptions {
148143
}
149144
}
150145

146+
impl Default for ParserOptions {
147+
fn default() -> Self {
148+
Self::new()
149+
}
150+
}
151+
151152
/// Ident Normalizer
152153
#[derive(Debug)]
153154
pub struct IdentNormalizer {
@@ -337,7 +338,7 @@ pub struct SqlToRel<'a, S: ContextProvider> {
337338
impl<'a, S: ContextProvider> SqlToRel<'a, S> {
338339
/// Create a new query planner
339340
pub fn new(context_provider: &'a S) -> Self {
340-
Self::new_with_options(context_provider, ParserOptions::new())
341+
Self::new_with_options(context_provider, ParserOptions::default())
341342
}
342343

343344
/// Create a new query planner

datafusion/sql/tests/cases/diagnostic.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ fn do_query(sql: &'static str) -> Diagnostic {
3333
.expect("unable to parse query");
3434
let options = ParserOptions {
3535
collect_spans: true,
36-
..ParserOptions::new()
36+
..ParserOptions::default()
3737
};
3838

3939
let state = MockSessionState::default();

datafusion/sql/tests/sql_integration.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1434,7 +1434,7 @@ fn recursive_ctes_disabled() {
14341434
state.config_options.execution.enable_recursive_ctes = false;
14351435
let context = MockContextProvider { state };
14361436

1437-
let planner = SqlToRel::new_with_options(&context, ParserOptions::new());
1437+
let planner = SqlToRel::new_with_options(&context, ParserOptions::default());
14381438
let result = DFParser::parse_sql_with_dialect(sql, &GenericDialect {});
14391439
let mut ast = result.unwrap();
14401440

@@ -2593,7 +2593,7 @@ fn select_groupby_orderby() {
25932593
}
25942594

25952595
fn logical_plan(sql: &str) -> Result<LogicalPlan> {
2596-
logical_plan_with_options(sql, ParserOptions::new())
2596+
logical_plan_with_options(sql, ParserOptions::default())
25972597
}
25982598

25992599
fn logical_plan_with_options(sql: &str, options: ParserOptions) -> Result<LogicalPlan> {
@@ -2702,7 +2702,7 @@ impl ScalarUDFImpl for DummyUDF {
27022702

27032703
/// Create logical plan, write with formatter, compare to expected output
27042704
fn quick_test(sql: &str, expected: &str) {
2705-
quick_test_with_options(sql, expected, ParserOptions::new())
2705+
quick_test_with_options(sql, expected, ParserOptions::default())
27062706
}
27072707

27082708
fn quick_test_with_options(sql: &str, expected: &str, options: ParserOptions) {
@@ -4453,7 +4453,7 @@ fn test_parse_escaped_string_literal_value() {
44534453
fn plan_create_index() {
44544454
let sql =
44554455
"CREATE UNIQUE INDEX IF NOT EXISTS idx_name ON test USING btree (name, age DESC)";
4456-
let plan = logical_plan_with_options(sql, ParserOptions::new()).unwrap();
4456+
let plan = logical_plan_with_options(sql, ParserOptions::default()).unwrap();
44574457
match plan {
44584458
LogicalPlan::Ddl(DdlStatement::CreateIndex(CreateIndex {
44594459
name,
@@ -4513,7 +4513,7 @@ fn init() {
45134513
fn test_no_functions_registered() {
45144514
let sql = "SELECT foo()";
45154515

4516-
let options = ParserOptions::new();
4516+
let options = ParserOptions::default();
45174517
let dialect = &GenericDialect {};
45184518
let state = MockSessionState::default();
45194519
let context = MockContextProvider { state };
@@ -4534,7 +4534,7 @@ fn test_custom_type_plan() -> Result<()> {
45344534
let sql = "SELECT DATETIME '2001-01-01 18:00:00'";
45354535

45364536
// test the default behavior
4537-
let options = ParserOptions::new();
4537+
let options = ParserOptions::default();
45384538
let dialect = &GenericDialect {};
45394539
let state = MockSessionState::default();
45404540
let context = MockContextProvider { state };
@@ -4548,7 +4548,7 @@ fn test_custom_type_plan() -> Result<()> {
45484548
);
45494549

45504550
fn plan_sql(sql: &str) -> LogicalPlan {
4551-
let options = ParserOptions::new();
4551+
let options = ParserOptions::default();
45524552
let dialect = &GenericDialect {};
45534553
let state = MockSessionState::default()
45544554
.with_scalar_function(make_array_udf())

0 commit comments

Comments
 (0)