diff options
Diffstat (limited to 'object/blob/serialize.go')
| -rw-r--r-- | object/blob/serialize.go | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/object/blob/serialize.go b/object/blob/serialize.go new file mode 100644 index 00000000..2dcc147f --- /dev/null +++ b/object/blob/serialize.go @@ -0,0 +1,18 @@ +package blob + +import ( + "codeberg.org/lindenii/furgit/object/header" + "codeberg.org/lindenii/furgit/object/typ" +) + +// BytesWithoutHeader renders the raw blob body bytes. +func (blob *Blob) AppendWithoutHeader(dst []byte) ([]byte, error) { + return append(dst, blob.Data...), nil +} + +// BytesWithHeader renders the raw object (header + body). +func (blob *Blob) AppendWithHeader(dst []byte) ([]byte, error) { + dst = header.Append(dst, typ.TypeBlob, uint64(len(blob.Data))) + + return blob.AppendWithoutHeader(dst) +} |
