aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ref/detached.go22
-rw-r--r--ref/ref.go34
-rw-r--r--ref/symbolic.go14
3 files changed, 36 insertions, 34 deletions
diff --git a/ref/detached.go b/ref/detached.go
new file mode 100644
index 00000000..de709d81
--- /dev/null
+++ b/ref/detached.go
@@ -0,0 +1,22 @@
+package ref
+
+import "codeberg.org/lindenii/furgit/objectid"
+
+// Detached points directly to an object ID.
+type Detached struct {
+ RefName string
+ ID objectid.ObjectID
+
+ // Peeled is the peeled target when available (for annotated tags).
+ //
+ // This field is optional backend-provided metadata. Backends that do not
+ // have peel metadata available may leave it nil.
+ Peeled *objectid.ObjectID
+}
+
+// Name returns the fully-qualified reference name.
+func (ref Detached) Name() string {
+ return ref.RefName
+}
+
+func (Detached) isRef() {}
diff --git a/ref/ref.go b/ref/ref.go
index 3752d1e3..2364406c 100644
--- a/ref/ref.go
+++ b/ref/ref.go
@@ -1,8 +1,6 @@
// Package ref provides general, detached, and symbolic references.
package ref
-import "codeberg.org/lindenii/furgit/objectid"
-
// Ref is a Git reference.
//
// Implementations must be in this package.
@@ -10,35 +8,3 @@ type Ref interface {
isRef()
Name() string
}
-
-// Detached points directly to an object ID.
-type Detached struct {
- RefName string
- ID objectid.ObjectID
-
- // Peeled is the peeled target when available (for annotated tags).
- //
- // This field is optional backend-provided metadata. Backends that do not
- // have peel metadata available may leave it nil.
- Peeled *objectid.ObjectID
-}
-
-// Name returns the fully-qualified reference name.
-func (ref Detached) Name() string {
- return ref.RefName
-}
-
-func (Detached) isRef() {}
-
-// Symbolic points to another reference name.
-type Symbolic struct {
- RefName string
- Target string
-}
-
-// Name returns the fully-qualified reference name.
-func (ref Symbolic) Name() string {
- return ref.RefName
-}
-
-func (Symbolic) isRef() {}
diff --git a/ref/symbolic.go b/ref/symbolic.go
new file mode 100644
index 00000000..af9f9e84
--- /dev/null
+++ b/ref/symbolic.go
@@ -0,0 +1,14 @@
+package ref
+
+// Symbolic points to another reference name.
+type Symbolic struct {
+ RefName string
+ Target string
+}
+
+// Name returns the fully-qualified reference name.
+func (ref Symbolic) Name() string {
+ return ref.RefName
+}
+
+func (Symbolic) isRef() {}