rluvaton commented on issue #21231:
URL: https://github.com/apache/datafusion/issues/21231#issuecomment-4188630560

   > [@rluvaton](https://github.com/rluvaton) 
`children_in_scope/with_new_children_in_scope` does work, but I believe it 
would actually require new `TreeNode` methods, `apply_in_scope` for `CaseWhen`, 
but others should be added as well.
   
   yes and the default implementation for 
`children_in_scope/with_new_children_in_scope` would either be to call 
`with_children` to avoid any breaking changes.
   
   
   
   > When lambda support arrives with `CaseWhen` being aware of it, and 
[@rluvaton](https://github.com/rluvaton) can use it instead of it's custom 
implementation (which I believe will happen since he's helping me implement it 
on [#18921](https://github.com/apache/datafusion/pull/18921)), then this became 
a non issue, right? I don't think there will be any other case of custom 
column-like expressions besides regular columns and lambda variables. And then, 
If someone needs either a custom `Column` or `LambdaVariable` (but not 
something else), then it can return the core version as children as proposed by 
[@alamb](https://github.com/alamb)
   
   not returning all the children is not a solution in my opinion due to the 
reasons I listed above, and having custom column implementation should not fail 
execution even when having lambda expression support.
   
   


-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to