diff options
| author | 2026-03-06 02:07:35 +0800 | |
|---|---|---|
| committer | 2026-03-06 02:07:35 +0800 | |
| commit | 0d4aadc72ddf286ace361c31840410d86b1eff15 (patch) | |
| tree | db080eeea7102fd79dc0957949a72a31af609dd9 | |
| parent | repository: Refactor (diff) | |
| signature | No signature | |
objectstored: Split
| -rw-r--r-- | objectstored/blob.go | 32 | ||||
| -rw-r--r-- | objectstored/commit.go | 32 | ||||
| -rw-r--r-- | objectstored/object.go | 14 | ||||
| -rw-r--r-- | objectstored/objectstored.go | 32 | ||||
| -rw-r--r-- | objectstored/stored.go | 117 | ||||
| -rw-r--r-- | objectstored/tree.go | 32 |
6 files changed, 142 insertions, 117 deletions
diff --git a/objectstored/blob.go b/objectstored/blob.go new file mode 100644 index 00000000..f87af561 --- /dev/null +++ b/objectstored/blob.go @@ -0,0 +1,32 @@ +package objectstored + +import ( + "codeberg.org/lindenii/furgit/object" + "codeberg.org/lindenii/furgit/objectid" +) + +// StoredBlob is a parsed blob paired with its storage ID. +type StoredBlob struct { + id objectid.ObjectID + blob *object.Blob +} + +// NewStoredBlob creates one stored blob wrapper. +func NewStoredBlob(id objectid.ObjectID, blob *object.Blob) *StoredBlob { + return &StoredBlob{id: id, blob: blob} +} + +// ID returns the object ID this blob was loaded from. +func (stored *StoredBlob) ID() objectid.ObjectID { + return stored.id +} + +// Object returns the parsed blob as the generic object interface. +func (stored *StoredBlob) Object() object.Object { + return stored.blob +} + +// Blob returns the parsed blob value. +func (stored *StoredBlob) Blob() *object.Blob { + return stored.blob +} diff --git a/objectstored/commit.go b/objectstored/commit.go new file mode 100644 index 00000000..0bcd1e3f --- /dev/null +++ b/objectstored/commit.go @@ -0,0 +1,32 @@ +package objectstored + +import ( + "codeberg.org/lindenii/furgit/object" + "codeberg.org/lindenii/furgit/objectid" +) + +// StoredCommit is a parsed commit paired with its storage ID. +type StoredCommit struct { + id objectid.ObjectID + commit *object.Commit +} + +// NewStoredCommit creates one stored commit wrapper. +func NewStoredCommit(id objectid.ObjectID, commit *object.Commit) *StoredCommit { + return &StoredCommit{id: id, commit: commit} +} + +// ID returns the object ID this commit was loaded from. +func (stored *StoredCommit) ID() objectid.ObjectID { + return stored.id +} + +// Object returns the parsed commit as the generic object interface. +func (stored *StoredCommit) Object() object.Object { + return stored.commit +} + +// Commit returns the parsed commit value. +func (stored *StoredCommit) Commit() *object.Commit { + return stored.commit +} diff --git a/objectstored/object.go b/objectstored/object.go new file mode 100644 index 00000000..8099ddcd --- /dev/null +++ b/objectstored/object.go @@ -0,0 +1,14 @@ +package objectstored + +import ( + "codeberg.org/lindenii/furgit/object" + "codeberg.org/lindenii/furgit/objectid" +) + +// StoredObject is a parsed object paired with its storage ID. +type StoredObject interface { + // ID returns the object ID the object was loaded from. + ID() objectid.ObjectID + // Object returns the parsed object value. + Object() object.Object +} diff --git a/objectstored/objectstored.go b/objectstored/objectstored.go new file mode 100644 index 00000000..f50b27ee --- /dev/null +++ b/objectstored/objectstored.go @@ -0,0 +1,32 @@ +package objectstored + +import ( + "codeberg.org/lindenii/furgit/object" + "codeberg.org/lindenii/furgit/objectid" +) + +// StoredTag is a parsed tag paired with its storage ID. +type StoredTag struct { + id objectid.ObjectID + tag *object.Tag +} + +// NewStoredTag creates one stored tag wrapper. +func NewStoredTag(id objectid.ObjectID, tag *object.Tag) *StoredTag { + return &StoredTag{id: id, tag: tag} +} + +// ID returns the object ID this tag was loaded from. +func (stored *StoredTag) ID() objectid.ObjectID { + return stored.id +} + +// Object returns the parsed tag as the generic object interface. +func (stored *StoredTag) Object() object.Object { + return stored.tag +} + +// Tag returns the parsed tag value. +func (stored *StoredTag) Tag() *object.Tag { + return stored.tag +} diff --git a/objectstored/stored.go b/objectstored/stored.go index 8fe8800c..96060295 100644 --- a/objectstored/stored.go +++ b/objectstored/stored.go @@ -1,119 +1,2 @@ // Package objectstored wraps parsed objects with their storage object IDs. package objectstored - -import ( - "codeberg.org/lindenii/furgit/object" - "codeberg.org/lindenii/furgit/objectid" -) - -// StoredObject is a parsed object paired with its storage ID. -type StoredObject interface { - // ID returns the object ID the object was loaded from. - ID() objectid.ObjectID - // Object returns the parsed object value. - Object() object.Object -} - -// StoredBlob is a parsed blob paired with its storage ID. -type StoredBlob struct { - id objectid.ObjectID - blob *object.Blob -} - -// NewStoredBlob creates one stored blob wrapper. -func NewStoredBlob(id objectid.ObjectID, blob *object.Blob) *StoredBlob { - return &StoredBlob{id: id, blob: blob} -} - -// ID returns the object ID this blob was loaded from. -func (stored *StoredBlob) ID() objectid.ObjectID { - return stored.id -} - -// Object returns the parsed blob as the generic object interface. -func (stored *StoredBlob) Object() object.Object { - return stored.blob -} - -// Blob returns the parsed blob value. -func (stored *StoredBlob) Blob() *object.Blob { - return stored.blob -} - -// 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 -} - -// StoredCommit is a parsed commit paired with its storage ID. -type StoredCommit struct { - id objectid.ObjectID - commit *object.Commit -} - -// NewStoredCommit creates one stored commit wrapper. -func NewStoredCommit(id objectid.ObjectID, commit *object.Commit) *StoredCommit { - return &StoredCommit{id: id, commit: commit} -} - -// ID returns the object ID this commit was loaded from. -func (stored *StoredCommit) ID() objectid.ObjectID { - return stored.id -} - -// Object returns the parsed commit as the generic object interface. -func (stored *StoredCommit) Object() object.Object { - return stored.commit -} - -// Commit returns the parsed commit value. -func (stored *StoredCommit) Commit() *object.Commit { - return stored.commit -} - -// StoredTag is a parsed tag paired with its storage ID. -type StoredTag struct { - id objectid.ObjectID - tag *object.Tag -} - -// NewStoredTag creates one stored tag wrapper. -func NewStoredTag(id objectid.ObjectID, tag *object.Tag) *StoredTag { - return &StoredTag{id: id, tag: tag} -} - -// ID returns the object ID this tag was loaded from. -func (stored *StoredTag) ID() objectid.ObjectID { - return stored.id -} - -// Object returns the parsed tag as the generic object interface. -func (stored *StoredTag) Object() object.Object { - return stored.tag -} - -// Tag returns the parsed tag value. -func (stored *StoredTag) Tag() *object.Tag { - return stored.tag -} diff --git a/objectstored/tree.go b/objectstored/tree.go new file mode 100644 index 00000000..3c6e53de --- /dev/null +++ b/objectstored/tree.go @@ -0,0 +1,32 @@ +package objectstored + +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 +} |
