-
Notifications
You must be signed in to change notification settings - Fork 57
/
enum_32_bit_enum.go
121 lines (108 loc) · 3.61 KB
/
enum_32_bit_enum.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
// Code generated by go-enum DO NOT EDIT.
// Version: example
// Revision: example
// Build Date: example
// Built By: example
//go:build example
// +build example
package example
import (
"fmt"
"strings"
)
const (
// Enum32bitUnkno is a Enum32bit of type Unkno.
Enum32bitUnkno Enum32bit = iota
// Enum32bitE2P15 is a Enum32bit of type E2P15.
Enum32bitE2P15 Enum32bit = iota + 32767
// Enum32bitE2P16 is a Enum32bit of type E2P16.
Enum32bitE2P16 Enum32bit = iota + 65534
// Enum32bitE2P17 is a Enum32bit of type E2P17.
Enum32bitE2P17 Enum32bit = iota + 131069
// Enum32bitE2P18 is a Enum32bit of type E2P18.
Enum32bitE2P18 Enum32bit = iota + 262140
// Enum32bitE2P19 is a Enum32bit of type E2P19.
Enum32bitE2P19 Enum32bit = iota + 524283
// Enum32bitE2P20 is a Enum32bit of type E2P20.
Enum32bitE2P20 Enum32bit = iota + 1048570
// Enum32bitE2P21 is a Enum32bit of type E2P21.
Enum32bitE2P21 Enum32bit = iota + 2097145
// Enum32bitE2P22 is a Enum32bit of type E2P22.
Enum32bitE2P22 Enum32bit = iota + 33554424
// Enum32bitE2P23 is a Enum32bit of type E2P23.
Enum32bitE2P23 Enum32bit = iota + 67108855
// Enum32bitE2P28 is a Enum32bit of type E2P28.
Enum32bitE2P28 Enum32bit = iota + 536870902
// Enum32bitE2P30 is a Enum32bit of type E2P30.
Enum32bitE2P30 Enum32bit = iota + 1073741813
)
var ErrInvalidEnum32bit = fmt.Errorf("not a valid Enum32bit, try [%s]", strings.Join(_Enum32bitNames, ", "))
const _Enum32bitName = "UnknoE2P15E2P16E2P17E2P18E2P19E2P20E2P21E2P22E2P23E2P28E2P30"
var _Enum32bitNames = []string{
_Enum32bitName[0:5],
_Enum32bitName[5:10],
_Enum32bitName[10:15],
_Enum32bitName[15:20],
_Enum32bitName[20:25],
_Enum32bitName[25:30],
_Enum32bitName[30:35],
_Enum32bitName[35:40],
_Enum32bitName[40:45],
_Enum32bitName[45:50],
_Enum32bitName[50:55],
_Enum32bitName[55:60],
}
// Enum32bitNames returns a list of possible string values of Enum32bit.
func Enum32bitNames() []string {
tmp := make([]string, len(_Enum32bitNames))
copy(tmp, _Enum32bitNames)
return tmp
}
var _Enum32bitMap = map[Enum32bit]string{
Enum32bitUnkno: _Enum32bitName[0:5],
Enum32bitE2P15: _Enum32bitName[5:10],
Enum32bitE2P16: _Enum32bitName[10:15],
Enum32bitE2P17: _Enum32bitName[15:20],
Enum32bitE2P18: _Enum32bitName[20:25],
Enum32bitE2P19: _Enum32bitName[25:30],
Enum32bitE2P20: _Enum32bitName[30:35],
Enum32bitE2P21: _Enum32bitName[35:40],
Enum32bitE2P22: _Enum32bitName[40:45],
Enum32bitE2P23: _Enum32bitName[45:50],
Enum32bitE2P28: _Enum32bitName[50:55],
Enum32bitE2P30: _Enum32bitName[55:60],
}
// String implements the Stringer interface.
func (x Enum32bit) String() string {
if str, ok := _Enum32bitMap[x]; ok {
return str
}
return fmt.Sprintf("Enum32bit(%d)", x)
}
// IsValid provides a quick way to determine if the typed value is
// part of the allowed enumerated values
func (x Enum32bit) IsValid() bool {
_, ok := _Enum32bitMap[x]
return ok
}
var _Enum32bitValue = map[string]Enum32bit{
_Enum32bitName[0:5]: Enum32bitUnkno,
_Enum32bitName[5:10]: Enum32bitE2P15,
_Enum32bitName[10:15]: Enum32bitE2P16,
_Enum32bitName[15:20]: Enum32bitE2P17,
_Enum32bitName[20:25]: Enum32bitE2P18,
_Enum32bitName[25:30]: Enum32bitE2P19,
_Enum32bitName[30:35]: Enum32bitE2P20,
_Enum32bitName[35:40]: Enum32bitE2P21,
_Enum32bitName[40:45]: Enum32bitE2P22,
_Enum32bitName[45:50]: Enum32bitE2P23,
_Enum32bitName[50:55]: Enum32bitE2P28,
_Enum32bitName[55:60]: Enum32bitE2P30,
}
// ParseEnum32bit attempts to convert a string to a Enum32bit.
func ParseEnum32bit(name string) (Enum32bit, error) {
if x, ok := _Enum32bitValue[name]; ok {
return x, nil
}
return Enum32bit(0), fmt.Errorf("%s is %w", name, ErrInvalidEnum32bit)
}