Skip to content

Rename {Move,Copy}CtorStyle and has_{move,copy}_ctor_and_assignment_operator - #1887

Merged
copybara-service[bot] merged 1 commit into
mainfrom
test_971439635
Aug 26, 2026
Merged

Rename {Move,Copy}CtorStyle and has_{move,copy}_ctor_and_assignment_operator#1887
copybara-service[bot] merged 1 commit into
mainfrom
test_971439635

Conversation

@copybara-service

Copy link
Copy Markdown

Rename {Move,Copy}CtorStyle and has_{move,copy}_ctor_and_assignment_operator

These names are extremely misleading because they suggest information on how the corresponding C++ type will behave, rather than how we would make the C++ type behave is we generated it purely from the information on the Rust type.

In particular, it falls apart for Rust types that have an existing C++ type that already exists. In cases where the Rust type came from a C++ type via rs_bindings_from_cc, this could literally return the wrong answer ("your type, which literally corresponds to a movable C++ type, won't be movable in C++ because I looked at its shape in Rust and it doesn't implement Default mhm.")

By itself, this doesn't fix anything. But it will make followup bugfixing changes more intuitive.

@google-cla

google-cla Bot commented Aug 26, 2026

Copy link
Copy Markdown

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

@copybara-service
copybara-service Bot force-pushed the test_971439635 branch 2 times, most recently from 0f8bb8f to 46a1b99 Compare August 26, 2026 20:57
…perator

These names are extremely misleading because they suggest information on how the corresponding C++ type will behave, rather than _how we would make the C++ type behave is we generated it purely from the information on the Rust type_.

In particular, it falls apart for Rust types that have an existing C++ type that already exists. In cases where the Rust type came from a C++ type via rs_bindings_from_cc, this could literally return the wrong answer ("your type, which literally corresponds to a movable C++ type, won't be movable in C++ because I looked at its shape in Rust and it doesn't implement Default mhm.")

By itself, this doesn't fix anything. But it will make followup bugfixing changes more intuitive.

PiperOrigin-RevId: 971497455
@copybara-service
copybara-service Bot merged commit a6c6112 into main Aug 26, 2026
6 of 7 checks passed
@copybara-service
copybara-service Bot deleted the test_971439635 branch August 26, 2026 21:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants