@@ -334,7 +334,7 @@ fn plan_normalize(
334334 let exprs = exprs
335335 . iter ( )
336336 . map ( |expr| {
337- expr_normalize (
337+ expr_normalize_stacked (
338338 optimizer,
339339 expr,
340340 schema,
@@ -343,7 +343,8 @@ fn plan_normalize(
343343 )
344344 } )
345345 . collect :: < Result < Vec < _ > > > ( ) ?;
346- Partitioning :: Hash ( exprs. into_iter ( ) . map ( |e| * e) . collect ( ) , * n)
346+
347+ Partitioning :: Hash ( exprs, * n)
347348 }
348349 } ;
349350
@@ -394,7 +395,7 @@ fn plan_normalize(
394395 let filters = filters
395396 . iter ( )
396397 . map ( |expr| {
397- expr_normalize (
398+ expr_normalize_stacked (
398399 optimizer,
399400 expr,
400401 & projected_schema,
@@ -410,7 +411,7 @@ fn plan_normalize(
410411 source,
411412 projection,
412413 projected_schema,
413- filters : filters . into_iter ( ) . map ( |e| * e ) . collect ( ) ,
414+ filters,
414415 fetch,
415416 } ) )
416417 }
@@ -477,7 +478,7 @@ fn plan_normalize(
477478 . map ( |row| {
478479 row. iter ( )
479480 . map ( |expr| {
480- expr_normalize (
481+ expr_normalize_stacked (
481482 optimizer,
482483 expr,
483484 schema,
@@ -489,13 +490,7 @@ fn plan_normalize(
489490 } )
490491 . collect :: < Result < Vec < _ > > > ( ) ?;
491492
492- LogicalPlanBuilder :: values (
493- values
494- . into_iter ( )
495- . map ( |row| row. into_iter ( ) . map ( |e| * e) . collect ( ) )
496- . collect ( ) ,
497- ) ?
498- . build ( )
493+ LogicalPlanBuilder :: values ( values) ?. build ( )
499494 }
500495
501496 LogicalPlan :: Explain ( Explain {
@@ -544,15 +539,20 @@ fn plan_normalize(
544539 let new_expr = expr
545540 . iter ( )
546541 . map ( |expr| {
547- expr_normalize ( optimizer, expr, schema, remapped_columns, optimizer_config)
542+ expr_normalize_stacked (
543+ optimizer,
544+ expr,
545+ schema,
546+ remapped_columns,
547+ optimizer_config,
548+ )
548549 } )
549550 . collect :: < Result < Vec < _ > > > ( ) ?;
550- let new_expr_unboxed: Vec < Expr > = new_expr. iter ( ) . map ( |e| e. as_ref ( ) . clone ( ) ) . collect ( ) ;
551- let new_schema = build_table_udf_schema ( & input, & new_expr_unboxed) ?;
551+ let new_schema = build_table_udf_schema ( & input, & new_expr) ?;
552552
553553 for ( expr, new_expr) in expr. iter ( ) . zip ( new_expr. iter ( ) ) {
554554 let old_name = expr. name ( & DFSchema :: empty ( ) ) ?;
555- let new_name = new_expr. as_ref ( ) . name ( & DFSchema :: empty ( ) ) ?;
555+ let new_name = new_expr. name ( & DFSchema :: empty ( ) ) ?;
556556 if old_name != new_name {
557557 let old_column = Column :: from_name ( old_name) ;
558558 let new_column = Column :: from_name ( new_name) ;
@@ -561,7 +561,7 @@ fn plan_normalize(
561561 }
562562
563563 Ok ( LogicalPlan :: TableUDFs ( TableUDFs {
564- expr : new_expr. into_iter ( ) . map ( |e| * e ) . collect ( ) ,
564+ expr : new_expr,
565565 input,
566566 schema : new_schema,
567567 } ) )
0 commit comments