mirror of
https://github.com/protocolbuffers/protobuf
synced 2026-08-26 02:23:14 -04:00
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 |
||
|---|---|---|
| .. | ||
| BUILD | ||
| compare.cc | ||
| compare.h | ||
| debug.cc | ||
| debug.h | ||
| map.cc | ||
| message.cc | ||
| repeated.cc | ||
| rust_alloc_for_cpp_api.h | ||
| rust_alloc_for_cpp_api.rs | ||
| serialized_data.h | ||
| strings.cc | ||
| strings.h | ||