dep-protobuf/rust/cpp_kernel
Adam Cozzette 9bdafdbb0c Rust C++: remove per-message functions for repeated fields
This CL deletes the per-message C++ functions for operating on repeated fields
and replaces them with functions in the runtime that can work with arbitrary
messages.

Similar to what we did with maps, this required refactoring the code to make it
work with `RepeatedPtrFieldBase`, the untyped base class of
`RepeatedPtrField<T>`. I added a `RustRepeatedMessageHelper` class to allow us
access to the protected methods we need.

This should save a bit of linker input code size, but I think more importantly
we are going to need this eventually to enable tree shaking to work well.

PiperOrigin-RevId: 693394959
2024-11-05 10:24:35 -08:00
..
BUILD Rust C++: get all map fields onto a common implementation of ProxiedInMapValue 2024-10-18 10:52:08 -07:00
compare.cc Set up for Rust-cpp Protobuf implementation message matcher. 2024-08-01 07:52:17 -07:00
compare.h Set up for Rust-cpp Protobuf implementation message matcher. 2024-08-01 07:52:17 -07:00
debug.cc Enable MessageLite::DebugString to use Message::DebugString where possible. 2024-07-03 09:37:37 -07:00
debug.h Enable MessageLite::DebugString to use Message::DebugString where possible. 2024-07-03 09:37:37 -07:00
map.cc Rust C++: get all map fields onto a common implementation of ProxiedInMapValue 2024-10-18 10:52:08 -07:00
message.cc Replace some per-message C++ thunks with a common implementation 2024-08-21 09:34:25 -07:00
repeated.cc Rust C++: remove per-message functions for repeated fields 2024-11-05 10:24:35 -08:00
rust_alloc_for_cpp_api.h Change to proto2_rust C prefix and proto2::rust C++ namespace 2024-07-02 11:44:17 -07:00
rust_alloc_for_cpp_api.rs Change to proto2_rust C prefix and proto2::rust C++ namespace 2024-07-02 11:44:17 -07:00
serialized_data.h Make SerializedData into a POD struct. 2024-09-18 14:17:14 -07:00
strings.cc Move -Werror to our test/dev bazelrc files. 2024-08-23 13:26:32 -07:00
strings.h Move -Werror to our test/dev bazelrc files. 2024-08-23 13:26:32 -07:00