vbarua commented on code in PR #13931:
URL: https://github.com/apache/datafusion/pull/13931#discussion_r1899716140


##########
datafusion/substrait/src/logical_plan/producer.rs:
##########
@@ -185,257 +501,290 @@ pub fn to_substrait_extended_expr(
     }))
 }
 
-/// Convert DataFusion LogicalPlan to Substrait Rel
-#[allow(deprecated)]
 pub fn to_substrait_rel(
+    producer: &mut impl SubstraitProducer,
     plan: &LogicalPlan,
-    state: &dyn SubstraitPlanningState,
-    extensions: &mut Extensions,
 ) -> Result<Box<Rel>> {
     match plan {
-        LogicalPlan::TableScan(scan) => {
-            let projection = scan.projection.as_ref().map(|p| {
-                p.iter()
-                    .map(|i| StructItem {
-                        field: *i as i32,
-                        child: None,
-                    })
-                    .collect()
-            });
+        LogicalPlan::Projection(plan) => producer.consume_projection(plan),
+        LogicalPlan::Filter(plan) => producer.consume_filter(plan),
+        LogicalPlan::Window(plan) => producer.consume_window(plan),
+        LogicalPlan::Aggregate(plan) => producer.consume_aggregate(plan),
+        LogicalPlan::Sort(plan) => producer.consume_sort(plan),
+        LogicalPlan::Join(plan) => producer.consume_join(plan),
+        LogicalPlan::Repartition(plan) => producer.consume_repartition(plan),
+        LogicalPlan::Union(plan) => producer.consume_union(plan),
+        LogicalPlan::TableScan(plan) => producer.consume_table_scan(plan),
+        LogicalPlan::EmptyRelation(plan) => 
producer.consume_empty_relation(plan),
+        LogicalPlan::SubqueryAlias(plan) => 
producer.consume_subquery_alias(plan),
+        LogicalPlan::Limit(plan) => producer.consume_limit(plan),
+        LogicalPlan::Values(plan) => producer.consume_values(plan),
+        LogicalPlan::Distinct(plan) => producer.consume_distinct(plan),
+        LogicalPlan::Extension(plan) => producer.consume_extension(plan),
+        _ => not_impl_err!("Unsupported plan type: {plan:?}")?,

Review Comment:
   Fully expanded this out.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org
For additional commands, e-mail: github-h...@datafusion.apache.org

Reply via email to