aboutsummaryrefslogtreecommitdiff
path: root/object/storer/loose/read_size.go
diff options
context:
space:
mode:
Diffstat (limited to 'object/storer/loose/read_size.go')
-rw-r--r--object/storer/loose/read_size.go13
1 files changed, 13 insertions, 0 deletions
diff --git a/object/storer/loose/read_size.go b/object/storer/loose/read_size.go
new file mode 100644
index 00000000..2ececc49
--- /dev/null
+++ b/object/storer/loose/read_size.go
@@ -0,0 +1,13 @@
+package loose
+
+import objectid "codeberg.org/lindenii/furgit/object/id"
+
+// ReadSize reads an object's declared content length.
+//
+// Like ReadHeader, it parses only enough of the zlib-decoded object to recover
+// the header and does not verify the zlib Adler-32 trailer.
+func (store *Store) ReadSize(id objectid.ObjectID) (int64, error) {
+ _, size, err := store.ReadHeader(id)
+
+ return size, err
+}