Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clean up and open table cloning logic #32665

Merged
merged 1 commit into from
Jan 2, 2024
Merged

Conversation

roji
Copy link
Member

@roji roji commented Dec 24, 2023

This is a straightforward refactor, moving cloning logic out of the private CloningExpressionVisitor into Clone() methods on the various TableExpressionBase expressions. We already had an IClonableTableExpressionBase interface for extensibility, but its Clone() method did not accept the cloning visitor, so could not recursively visit sub-nodes. This opens things up and simplifies them.

Down the road I hope we can remove cloning altogether but for now it's a good idea to do this.

Fixes #30982
Fixes #32664

@roji roji merged commit 566b241 into dotnet:main Jan 2, 2024
7 checks passed
@roji roji deleted the ExpressionCloning branch January 2, 2024 21:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants