tustvold commented on issue #2175:
URL: 
https://github.com/apache/arrow-datafusion/issues/2175#issuecomment-1262625793

   > I wonder if we could extend PhysicalExpr to require PartialEq
   
   PartialEq is not object-safe, it takes Self, so this isn't possible (I don't 
think)
   
   > But if the expressions are Trait, because the type is unknown, how to 
write code to compare the expressions?
   
   `Expr` is a good example of where Rust's support for structured matching is 
fantastic, and I would definitely not propose switching `BinaryExpr` to be a 
trait object. 
   
   Is `ExecutionPlan` a similar use-case though? Most places it gets used 
actively don't care what variant is used? Is it possible that the fact they are 
represented differently is actually a strength, and represents the differing 
requirements of the different representations?


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to