aboutsummaryrefslogtreecommitdiff
path: root/object/tree.go
diff options
context:
space:
mode:
authorGravatar Runxi Yu2026-02-20 22:30:57 +0800
committerGravatar Runxi Yu2026-02-20 22:30:57 +0800
commitbb5b5334c74026c0a46f48cf2418038e0d909e9b (patch)
treea5520e55b904a1f973898858e2278f0be294a34b /object/tree.go
parentobject: Use objectheader (diff)
signatureNo signature
object: Remove the old opaque errors
Diffstat (limited to 'object/tree.go')
-rw-r--r--object/tree.go9
1 files changed, 5 insertions, 4 deletions
diff --git a/object/tree.go b/object/tree.go
index 9ccea4a2..b655be03 100644
--- a/object/tree.go
+++ b/object/tree.go
@@ -2,6 +2,7 @@ package object
import (
"bytes"
+ "errors"
"fmt"
"sort"
@@ -73,7 +74,7 @@ func (tree *Tree) entry(name []byte, searchIsTree bool) *TreeEntry {
// InsertEntry inserts a tree entry while preserving Git ordering.
func (tree *Tree) InsertEntry(newEntry TreeEntry) error {
if tree == nil {
- return ErrInvalidObject
+ return errors.New("object: tree: insert on nil tree")
}
if tree.entry(newEntry.Name, true) != nil || tree.entry(newEntry.Name, false) != nil {
return fmt.Errorf("object: tree: entry %q already exists", newEntry.Name)
@@ -91,10 +92,10 @@ func (tree *Tree) InsertEntry(newEntry TreeEntry) error {
// RemoveEntry removes a tree entry by name.
func (tree *Tree) RemoveEntry(name []byte) error {
if tree == nil {
- return ErrInvalidObject
+ return errors.New("object: tree: remove on nil tree")
}
if len(tree.Entries) == 0 {
- return ErrNotFound
+ return fmt.Errorf("object: tree: entry %q not found", name)
}
for i := range tree.Entries {
if bytes.Equal(tree.Entries[i].Name, name) {
@@ -103,7 +104,7 @@ func (tree *Tree) RemoveEntry(name []byte) error {
return nil
}
}
- return ErrNotFound
+ return fmt.Errorf("object: tree: entry %q not found", name)
}
// TreeEntryNameCompare compares names using Git tree ordering rules.