From fcd7f46605e3397400f696bdfd5e74d86a25a435 Mon Sep 17 00:00:00 2001 From: AndrewChubatiuk Date: Fri, 31 May 2024 21:13:42 +0300 Subject: [PATCH] added ability to append raw message --- writer.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/writer.go b/writer.go index 6cbc934..6e1e0f4 100644 --- a/writer.go +++ b/writer.go @@ -198,6 +198,16 @@ func (m *Marshaler) newFieldIndex() int { return fsLen } +// AppendRaw appends marshalled protobuf message to mm. +func (mm *MessageMarshaler) AppendRaw(data []byte) { + m := mm.m + dst := m.buf + dstLen := len(dst) + dst = append(dst, data...) + m.buf = dst + mm.appendField(m, dstLen, len(dst)) +} + // AppendInt32 appends the given int32 value under the given fieldNum to mm. func (mm *MessageMarshaler) AppendInt32(fieldNum uint32, i32 int32) { mm.AppendUint64(fieldNum, uint64(uint32(i32)))