Eagerly derive Clone, Copy, where possible#341
Merged
Conversation
Member
FWIW I expect this to fail, it looks broken on |
djc
approved these changes
May 15, 2025
djc
left a comment
Member
There was a problem hiding this comment.
This broadly looks good to me. Nit: I'd like the new additions to roughly appear in alphabetical order.
Contributor
Author
Sure! I'll rework this while still keeping separate commits for |
3300290 to
38ceffc
Compare
Contributor
Author
|
@djc done—feel free to nit further, of course |
15 tasks
est31
approved these changes
May 15, 2025
Member
|
Windows CI is broken but it doesn't seem to be fault of this patch. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Coming from #340, this PR derives
CloneandCopyto align rcgen more closely with Rust's API guidelines. Here's how I went about this:Clonefor as many types as possible in a full codebase pass (finding types by basically grepping forstructandenum). Keep making passes until no more types can derive it.CopyI've intentionally opted to derive these traits eagerly at first so that types that we don't want to derive
CloneorCopyfor will come up in this review. I think most of these make sense, but I could see some being not desirable—e.g.,CopyforSignatureAlgorithmParams.