shithub: furgit

ref: df1f2fb3daa1acd25c88510f259d5535fb482126
dir: /object/tag/tag.go/

View raw version
// Package tag provides parsed annotated tag objects and tag serialization.
//
// It parses annotated tags into ordinary Go values for reading and
// construction. It does not preserve the exact original byte layout needed for
// signature verification; callers that need signature-verification payload
// fidelity should use [codeberg.org/lindenii/furgit/object/signed/tag].
package tag

import (
	objectid "codeberg.org/lindenii/furgit/object/id"
	objectsignature "codeberg.org/lindenii/furgit/object/signature"
	objecttype "codeberg.org/lindenii/furgit/object/type"
)

// Tag represents a fully materialized Git annotated tag object.
//
// Labels: MT-Unsafe.
type Tag struct {
	Target     objectid.ObjectID
	TargetType objecttype.Type
	Name       []byte
	Tagger     *objectsignature.Signature
	Message    []byte
}