aboutsummaryrefslogtreecommitdiff
path: root/object/stored/tree.go
diff options
context:
space:
mode:
authorGravatar Runxi Yu2026-03-10 14:14:00 +0800
committerGravatar Runxi Yu2026-03-10 14:14:00 +0800
commit645f1df93518a8522e735113eaf947eac421a911 (patch)
tree65c0d35605f94b951deaf32cc0a065b9783b3e1c /object/stored/tree.go
parent*: format/pack -> packfile; format/delta -> delta; delete format (diff)
signatureNo signature
object/stored: Move from objectstored
Diffstat (limited to 'object/stored/tree.go')
-rw-r--r--object/stored/tree.go32
1 files changed, 32 insertions, 0 deletions
diff --git a/object/stored/tree.go b/object/stored/tree.go
new file mode 100644
index 00000000..a54c1f6e
--- /dev/null
+++ b/object/stored/tree.go
@@ -0,0 +1,32 @@
+package stored
+
+import (
+ "codeberg.org/lindenii/furgit/object"
+ "codeberg.org/lindenii/furgit/objectid"
+)
+
+// StoredTree is a parsed tree paired with its storage ID.
+type StoredTree struct {
+ id objectid.ObjectID
+ tree *object.Tree
+}
+
+// NewStoredTree creates one stored tree wrapper.
+func NewStoredTree(id objectid.ObjectID, tree *object.Tree) *StoredTree {
+ return &StoredTree{id: id, tree: tree}
+}
+
+// ID returns the object ID this tree was loaded from.
+func (stored *StoredTree) ID() objectid.ObjectID {
+ return stored.id
+}
+
+// Object returns the parsed tree as the generic object interface.
+func (stored *StoredTree) Object() object.Object {
+ return stored.tree
+}
+
+// Tree returns the parsed tree value.
+func (stored *StoredTree) Tree() *object.Tree {
+ return stored.tree
+}