aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/code.gitea.io/git/sha1.go
diff options
context:
space:
mode:
authorLunny Xiao <xiaolunwen@gmail.com>2016-12-22 17:30:52 +0800
committerThomas Boerger <thomas@webhippie.de>2016-12-22 10:30:52 +0100
commit47a7529d9655e11471bbe39958222a13854a6133 (patch)
tree98e597255245e17d39a0062c3977fb8a510cf413 /vendor/code.gitea.io/git/sha1.go
parent0c5c34d7ddaf31a6d8123dac36b221de61f5ff96 (diff)
downloadgitea-47a7529d9655e11471bbe39958222a13854a6133.tar.gz
gitea-47a7529d9655e11471bbe39958222a13854a6133.zip
update code.gitea.io/git (#450)
Diffstat (limited to 'vendor/code.gitea.io/git/sha1.go')
-rw-r--r--vendor/code.gitea.io/git/sha1.go40
1 files changed, 21 insertions, 19 deletions
diff --git a/vendor/code.gitea.io/git/sha1.go b/vendor/code.gitea.io/git/sha1.go
index 7744275d85..50708dee8b 100644
--- a/vendor/code.gitea.io/git/sha1.go
+++ b/vendor/code.gitea.io/git/sha1.go
@@ -10,13 +10,15 @@ import (
"strings"
)
-const EMPTY_SHA = "0000000000000000000000000000000000000000"
+// EmptySHA defines empty git SHA
+const EmptySHA = "0000000000000000000000000000000000000000"
-type sha1 [20]byte
+// SHA1 a git commit name
+type SHA1 [20]byte
-// Equal returns true if s has the same sha1 as caller.
-// Support 40-length-string, []byte, sha1.
-func (id sha1) Equal(s2 interface{}) bool {
+// Equal returns true if s has the same SHA1 as caller.
+// Support 40-length-string, []byte, SHA1.
+func (id SHA1) Equal(s2 interface{}) bool {
switch v := s2.(type) {
case string:
if len(v) != 40 {
@@ -32,7 +34,7 @@ func (id sha1) Equal(s2 interface{}) bool {
return false
}
}
- case sha1:
+ case SHA1:
for i, v := range v {
if id[i] != v {
return false
@@ -45,42 +47,42 @@ func (id sha1) Equal(s2 interface{}) bool {
}
// String returns string (hex) representation of the Oid.
-func (s sha1) String() string {
+func (id SHA1) String() string {
result := make([]byte, 0, 40)
hexvalues := []byte("0123456789abcdef")
for i := 0; i < 20; i++ {
- result = append(result, hexvalues[s[i]>>4])
- result = append(result, hexvalues[s[i]&0xf])
+ result = append(result, hexvalues[id[i]>>4])
+ result = append(result, hexvalues[id[i]&0xf])
}
return string(result)
}
-// MustID always creates a new sha1 from a [20]byte array with no validation of input.
-func MustID(b []byte) sha1 {
- var id sha1
+// MustID always creates a new SHA1 from a [20]byte array with no validation of input.
+func MustID(b []byte) SHA1 {
+ var id SHA1
for i := 0; i < 20; i++ {
id[i] = b[i]
}
return id
}
-// NewID creates a new sha1 from a [20]byte array.
-func NewID(b []byte) (sha1, error) {
+// NewID creates a new SHA1 from a [20]byte array.
+func NewID(b []byte) (SHA1, error) {
if len(b) != 20 {
- return sha1{}, fmt.Errorf("Length must be 20: %v", b)
+ return SHA1{}, fmt.Errorf("Length must be 20: %v", b)
}
return MustID(b), nil
}
// MustIDFromString always creates a new sha from a ID with no validation of input.
-func MustIDFromString(s string) sha1 {
+func MustIDFromString(s string) SHA1 {
b, _ := hex.DecodeString(s)
return MustID(b)
}
-// NewIDFromString creates a new sha1 from a ID string of length 40.
-func NewIDFromString(s string) (sha1, error) {
- var id sha1
+// NewIDFromString creates a new SHA1 from a ID string of length 40.
+func NewIDFromString(s string) (SHA1, error) {
+ var id SHA1
s = strings.TrimSpace(s)
if len(s) != 40 {
return id, fmt.Errorf("Length must be 40: %s", s)