aboutsummaryrefslogtreecommitdiff
path: root/object/blob_serialize.go
diff options
context:
space:
mode:
Diffstat (limited to 'object/blob_serialize.go')
-rw-r--r--object/blob_serialize.go13
1 files changed, 13 insertions, 0 deletions
diff --git a/object/blob_serialize.go b/object/blob_serialize.go
new file mode 100644
index 00000000..c1818c20
--- /dev/null
+++ b/object/blob_serialize.go
@@ -0,0 +1,13 @@
+package object
+
+// Serialize renders the raw object (header + body).
+func (blob *Blob) Serialize() ([]byte, error) {
+ header, err := headerForType(TypeBlob, blob.Data)
+ if err != nil {
+ return nil, err
+ }
+ raw := make([]byte, len(header)+len(blob.Data))
+ copy(raw, header)
+ copy(raw[len(header):], blob.Data)
+ return raw, nil
+}