-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmodel_increment.go
129 lines (107 loc) · 3.51 KB
/
model_increment.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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
/*
Paxos API
<p>Welcome to Paxos APIs. At Paxos, our mission is to enable the movement of any asset, any time, in a trustworthy way. These APIs serve that mission by making it easier than ever for you to directly integrate our product capabilities into your application, leveraging the speed, stability, and security of the Paxos platform.</p> <p>The documentation that follows gives you access to our Crypto Brokerage, Trading, and Exchange products. It includes APIs for market data, orders, and the held rate quote flow.</p> <p>To test in our sandbox environment, <a href=\"https://account.sandbox.paxos.com\" target=\"_blank\">sign up</a> for an account. For more information about Paxos and our APIs, visit <a href=\"https://www.paxos.com/\" target=\"_blank\">Paxos.com</a>.</p>
API version: 2.0
*/
// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.
package paxos
import (
"encoding/json"
"fmt"
)
// Increment the model 'Increment'
type Increment string
// List of Increment
const (
Increment_ONE_MINUTE Increment = "ONE_MINUTE"
Increment_FIVE_MINUTES Increment = "FIVE_MINUTES"
Increment_FIFTEEN_MINUTES Increment = "FIFTEEN_MINUTES"
Increment_THIRTY_MINUTES Increment = "THIRTY_MINUTES"
Increment_ONE_HOUR Increment = "ONE_HOUR"
Increment_TWO_HOURS Increment = "TWO_HOURS"
Increment_TWELVE_HOURS Increment = "TWELVE_HOURS"
Increment_ONE_DAY Increment = "ONE_DAY"
Increment_ONE_WEEK Increment = "ONE_WEEK"
Increment_TWO_WEEKS Increment = "TWO_WEEKS"
Increment_FOUR_WEEKS Increment = "FOUR_WEEKS"
)
// All allowed values of Increment enum
var AllowedIncrementEnumValues = []Increment{
"ONE_MINUTE",
"FIVE_MINUTES",
"FIFTEEN_MINUTES",
"THIRTY_MINUTES",
"ONE_HOUR",
"TWO_HOURS",
"TWELVE_HOURS",
"ONE_DAY",
"ONE_WEEK",
"TWO_WEEKS",
"FOUR_WEEKS",
}
func (v *Increment) UnmarshalJSON(src []byte) error {
var value string
err := json.Unmarshal(src, &value)
if err != nil {
return err
}
enumTypeValue := Increment(value)
for _, existing := range AllowedIncrementEnumValues {
if existing == enumTypeValue {
*v = enumTypeValue
return nil
}
}
return fmt.Errorf("%+v is not a valid Increment", value)
}
// NewIncrementFromValue returns a pointer to a valid Increment
// for the value passed as argument, or an error if the value passed is not allowed by the enum
func NewIncrementFromValue(v string) (*Increment, error) {
ev := Increment(v)
if ev.IsValid() {
return &ev, nil
} else {
return nil, fmt.Errorf("invalid value '%v' for Increment: valid values are %v", v, AllowedIncrementEnumValues)
}
}
// IsValid return true if the value is valid for the enum, false otherwise
func (v Increment) IsValid() bool {
for _, existing := range AllowedIncrementEnumValues {
if existing == v {
return true
}
}
return false
}
// Ptr returns reference to Increment value
func (v Increment) Ptr() *Increment {
return &v
}
type NullableIncrement struct {
value *Increment
isSet bool
}
func (v NullableIncrement) Get() *Increment {
return v.value
}
func (v *NullableIncrement) Set(val *Increment) {
v.value = val
v.isSet = true
}
func (v NullableIncrement) IsSet() bool {
return v.isSet
}
func (v *NullableIncrement) Unset() {
v.value = nil
v.isSet = false
}
func NewNullableIncrement(val *Increment) *NullableIncrement {
return &NullableIncrement{value: val, isSet: true}
}
func (v NullableIncrement) MarshalJSON() ([]byte, error) {
return json.Marshal(v.value)
}
func (v *NullableIncrement) UnmarshalJSON(src []byte) error {
v.isSet = true
return json.Unmarshal(src, &v.value)
}