1
0
Fork 0
golang-forgejo-f3-gof3/f3/release.go
Daniel Baumann 03bfe4079e
Adding upstream version 3.10.8.
Signed-off-by: Daniel Baumann <daniel@debian.org>
2025-05-18 09:37:23 +02:00

48 lines
1.3 KiB
Go

// Copyright Earl Warren <contact@earl-warren.org>
// Copyright Loïc Dachary <loic@dachary.org>
// SPDX-License-Identifier: MIT
package f3
import (
"time"
)
type Release struct {
Common
TagName string `json:"tag_name"`
TargetCommitish string `json:"target_commitish"`
Name string `json:"name"`
Body string `json:"body"`
Draft bool `json:"draft"`
Prerelease bool `json:"prerelease"`
PublisherID *Reference `json:"publisher_id"`
Assets []*ReleaseAsset `json:"assets"`
Created time.Time `json:"created"`
}
func (o Release) Equal(other Release) bool {
return o.Common.Equal(other.Common) &&
o.TagName == other.TagName &&
o.TargetCommitish == other.TargetCommitish &&
o.Name == other.Name &&
o.Body == other.Body &&
o.Draft == other.Draft &&
o.Prerelease == other.Prerelease &&
nilOrEqual(o.PublisherID, other.PublisherID) &&
arrayEqual(o.Assets, other.Assets)
}
func (o *Release) GetReferences() References {
references := o.Common.GetReferences()
if !o.PublisherID.IsNil() {
references = append(references, o.PublisherID)
}
return references
}
func (o *Release) Clone() Interface {
clone := &Release{}
*clone = *o
return clone
}