-
Notifications
You must be signed in to change notification settings - Fork 19
/
governance_new_freeform.go
89 lines (73 loc) · 2.31 KB
/
governance_new_freeform.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
// Copyright (C) 2023 Gobalsky Labs Limited
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
package types
import (
"fmt"
"code.vegaprotocol.io/vega/libs/stringer"
vegapb "code.vegaprotocol.io/vega/protos/vega"
)
type ProposalTermsNewFreeform struct {
NewFreeform *NewFreeform
}
func (f ProposalTermsNewFreeform) String() string {
return fmt.Sprintf(
"newFreeForm(%s)",
stringer.PtrToString(f.NewFreeform),
)
}
func (f ProposalTermsNewFreeform) IntoProto() *vegapb.NewFreeform {
var newFreeform *vegapb.NewFreeform
if f.NewFreeform != nil {
newFreeform = f.NewFreeform.IntoProto()
}
return newFreeform
}
func (f ProposalTermsNewFreeform) isPTerm() {}
func (a ProposalTermsNewFreeform) oneOfSingleProto() vegapb.ProposalOneOffTermChangeType {
return &vegapb.ProposalTerms_NewFreeform{
NewFreeform: a.IntoProto(),
}
}
func (a ProposalTermsNewFreeform) oneOfBatchProto() vegapb.ProposalOneOffTermBatchChangeType {
return &vegapb.BatchProposalTermsChange_NewFreeform{
NewFreeform: a.IntoProto(),
}
}
func (f ProposalTermsNewFreeform) GetTermType() ProposalTermsType {
return ProposalTermsTypeNewFreeform
}
func (f ProposalTermsNewFreeform) DeepClone() ProposalTerm {
if f.NewFreeform == nil {
return &ProposalTermsNewFreeform{}
}
return &ProposalTermsNewFreeform{
NewFreeform: f.NewFreeform.DeepClone(),
}
}
func NewNewFreeformFromProto(_ *vegapb.NewFreeform) *ProposalTermsNewFreeform {
return &ProposalTermsNewFreeform{
NewFreeform: &NewFreeform{},
}
}
type NewFreeform struct{}
func (n NewFreeform) IntoProto() *vegapb.NewFreeform {
return &vegapb.NewFreeform{}
}
func (n NewFreeform) String() string {
return ""
}
func (n NewFreeform) DeepClone() *NewFreeform {
return &NewFreeform{}
}