forked from rai-project/go-cupti
/
cupti_activityattribute_enumer.go
140 lines (116 loc) · 4.14 KB
/
cupti_activityattribute_enumer.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
129
130
131
132
133
134
135
136
137
138
139
140
// Code generated by "enumer -type=CUpti_ActivityAttribute -json -text -yaml -sql"; DO NOT EDIT.
//
package types
import (
"database/sql/driver"
"encoding/json"
"fmt"
)
const (
_CUpti_ActivityAttributeName_0 = "CUPTI_ACTIVITY_ATTR_DEVICE_BUFFER_SIZECUPTI_ACTIVITY_ATTR_DEVICE_BUFFER_SIZE_CDPCUPTI_ACTIVITY_ATTR_DEVICE_BUFFER_POOL_LIMITCUPTI_ACTIVITY_ATTR_PROFILING_SEMAPHORE_POOL_SIZECUPTI_ACTIVITY_ATTR_PROFILING_SEMAPHORE_POOL_LIMIT"
_CUpti_ActivityAttributeName_1 = "CUPTI_ACTIVITY_ATTR_DEVICE_BUFFER_FORCE_INT"
)
var (
_CUpti_ActivityAttributeIndex_0 = [...]uint8{0, 38, 80, 124, 173, 223}
_CUpti_ActivityAttributeIndex_1 = [...]uint8{0, 43}
)
func (i CUpti_ActivityAttribute) String() string {
switch {
case 0 <= i && i <= 4:
return _CUpti_ActivityAttributeName_0[_CUpti_ActivityAttributeIndex_0[i]:_CUpti_ActivityAttributeIndex_0[i+1]]
case i == 2147483647:
return _CUpti_ActivityAttributeName_1
default:
return fmt.Sprintf("CUpti_ActivityAttribute(%d)", i)
}
}
var _CUpti_ActivityAttributeValues = []CUpti_ActivityAttribute{0, 1, 2, 3, 4, 2147483647}
var _CUpti_ActivityAttributeNameToValueMap = map[string]CUpti_ActivityAttribute{
_CUpti_ActivityAttributeName_0[0:38]: 0,
_CUpti_ActivityAttributeName_0[38:80]: 1,
_CUpti_ActivityAttributeName_0[80:124]: 2,
_CUpti_ActivityAttributeName_0[124:173]: 3,
_CUpti_ActivityAttributeName_0[173:223]: 4,
_CUpti_ActivityAttributeName_1[0:43]: 2147483647,
}
// CUpti_ActivityAttributeString retrieves an enum value from the enum constants string name.
// Throws an error if the param is not part of the enum.
func CUpti_ActivityAttributeString(s string) (CUpti_ActivityAttribute, error) {
if val, ok := _CUpti_ActivityAttributeNameToValueMap[s]; ok {
return val, nil
}
return 0, fmt.Errorf("%s does not belong to CUpti_ActivityAttribute values", s)
}
// CUpti_ActivityAttributeValues returns all values of the enum
func CUpti_ActivityAttributeValues() []CUpti_ActivityAttribute {
return _CUpti_ActivityAttributeValues
}
// IsACUpti_ActivityAttribute returns "true" if the value is listed in the enum definition. "false" otherwise
func (i CUpti_ActivityAttribute) IsACUpti_ActivityAttribute() bool {
for _, v := range _CUpti_ActivityAttributeValues {
if i == v {
return true
}
}
return false
}
// MarshalJSON implements the json.Marshaler interface for CUpti_ActivityAttribute
func (i CUpti_ActivityAttribute) MarshalJSON() ([]byte, error) {
return json.Marshal(i.String())
}
// UnmarshalJSON implements the json.Unmarshaler interface for CUpti_ActivityAttribute
func (i *CUpti_ActivityAttribute) UnmarshalJSON(data []byte) error {
var s string
if err := json.Unmarshal(data, &s); err != nil {
return fmt.Errorf("CUpti_ActivityAttribute should be a string, got %s", data)
}
var err error
*i, err = CUpti_ActivityAttributeString(s)
return err
}
// MarshalText implements the encoding.TextMarshaler interface for CUpti_ActivityAttribute
func (i CUpti_ActivityAttribute) MarshalText() ([]byte, error) {
return []byte(i.String()), nil
}
// UnmarshalText implements the encoding.TextUnmarshaler interface for CUpti_ActivityAttribute
func (i *CUpti_ActivityAttribute) UnmarshalText(text []byte) error {
var err error
*i, err = CUpti_ActivityAttributeString(string(text))
return err
}
// MarshalYAML implements a YAML Marshaler for CUpti_ActivityAttribute
func (i CUpti_ActivityAttribute) MarshalYAML() (interface{}, error) {
return i.String(), nil
}
// UnmarshalYAML implements a YAML Unmarshaler for CUpti_ActivityAttribute
func (i *CUpti_ActivityAttribute) UnmarshalYAML(unmarshal func(interface{}) error) error {
var s string
if err := unmarshal(&s); err != nil {
return err
}
var err error
*i, err = CUpti_ActivityAttributeString(s)
return err
}
func (i CUpti_ActivityAttribute) Value() (driver.Value, error) {
return i.String(), nil
}
func (i *CUpti_ActivityAttribute) Scan(value interface{}) error {
if value == nil {
return nil
}
str, ok := value.(string)
if !ok {
bytes, ok := value.([]byte)
if !ok {
return fmt.Errorf("value is not a byte slice")
}
str = string(bytes[:])
}
val, err := CUpti_ActivityAttributeString(str)
if err != nil {
return err
}
*i = val
return nil
}