diff options
Diffstat (limited to 'src/protozero/field.cc')
-rw-r--r-- | src/protozero/field.cc | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/protozero/field.cc b/src/protozero/field.cc index c92f7cee9..be1648219 100644 --- a/src/protozero/field.cc +++ b/src/protozero/field.cc @@ -26,7 +26,8 @@ namespace protozero { -void Field::SerializeAndAppendTo(std::string* dst) { +template <typename Container> +void Field::SerializeAndAppendToInternal(Container* dst) const { namespace pu = proto_utils; size_t initial_size = dst->size(); dst->resize(initial_size + pu::kMaxSimpleFieldEncodedSize + size_); @@ -68,4 +69,12 @@ void Field::SerializeAndAppendTo(std::string* dst) { dst->resize(initial_size + written_size); } +void Field::SerializeAndAppendTo(std::string* dst) const { + SerializeAndAppendToInternal(dst); +} + +void Field::SerializeAndAppendTo(std::vector<uint8_t>* dst) const { + SerializeAndAppendToInternal(dst); +} + } // namespace protozero |