1
0
Fork 0
golang-forgejo-f3-gof3/tree/f3/pullrequest.go

48 lines
1.1 KiB
Go
Raw Normal View History

// Copyright Earl Warren <contact@earl-warren.org>
// Copyright Loïc Dachary <loic@dachary.org>
// SPDX-License-Identifier: MIT
package f3
import (
"context"
"code.forgejo.org/f3/gof3/v3/tree/generic"
)
type PullRequestDriverInterface interface {
GetPullRequestHead() string
GetPullRequestRef() string
GetPullRequestPushRefs() []string
}
type PullRequestNodeDriverProxyInterface interface {
PullRequestDriverInterface
}
type PullRequestNodeInterface interface {
generic.NodeInterface
PullRequestNodeDriverProxyInterface
}
type pullRequestNode struct {
generic.Node
}
func (o *pullRequestNode) GetPullRequestHead() string {
return o.GetDriver().(PullRequestDriverInterface).GetPullRequestHead()
}
func (o *pullRequestNode) GetPullRequestRef() string {
return o.GetDriver().(PullRequestDriverInterface).GetPullRequestRef()
}
func (o *pullRequestNode) GetPullRequestPushRefs() []string {
return o.GetDriver().(PullRequestDriverInterface).GetPullRequestPushRefs()
}
func newPullRequestNode(ctx context.Context, tree generic.TreeInterface) generic.NodeInterface {
node := &pullRequestNode{}
return node.Init(node)
}