kkrainov opened a new pull request, #22503:
URL: https://github.com/apache/datafusion/pull/22503
## Which issue does this PR close?
- Closes #22425
## Rationale for this change
This PR migrates InListExpr to use the new try_to_proto and try_from_proto
hooks, following the modular serialization architecture established in #21835 .
This moves serialization logic into the expression itself, improving
encapsulation and decentralizing the datafusion-proto logic as part of the
broader effort in #22418
## What changes are included in this PR?
- Implemented `PhysicalExpr::try_to_proto for InListExpr`.
- Implemented `InListExpr::try_from_proto` inherent method.
- Wired hooks in `from_proto.rs` and removed the central downcast arm in
to_proto.rs.
- Added isolated unit tests in `in_list.rs` using mock drivers to verify
roundtrips and error handling.
## Are these changes tested?
Yes, these changes are covered by both new and existing tests:
- New Unit Tests: Added mod `proto_tests` to in_list.rs using mock drivers
to verify `try_to_proto` and `try_from_proto` in isolation. These cover
successful roundtrips, incorrect node types, and missing required fields.
- Existing Integration Tests: Verified that the existing InList roundtrip
tests in datafusion-proto continue to pass after removing the central downcast
logic.
- Linting: Verified that the changes pass cargo `clippy --all-targets
--all-features` with zero warnings.
## Are there any user-facing changes?
No.
--
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]