fix: expose allowed values of the enum (#10386)

* fix: expose allowed values of the enum

Fixes #10385

* chore: update examples
This commit is contained in:
Wojciech Trocki
2021-09-21 04:58:38 +01:00
committed by GitHub
parent 1947f130c0
commit a939676c0d
8 changed files with 40 additions and 32 deletions

View File

@@ -25,7 +25,8 @@ const (
XYZ EnumClass = "(xyz)"
)
var allowedEnumClassEnumValues = []EnumClass{
// All allowed values of EnumClass enum
var AllowedEnumClassEnumValues = []EnumClass{
"_abc",
"-efg",
"(xyz)",
@@ -38,7 +39,7 @@ func (v *EnumClass) UnmarshalJSON(src []byte) error {
return err
}
enumTypeValue := EnumClass(value)
for _, existing := range allowedEnumClassEnumValues {
for _, existing := range AllowedEnumClassEnumValues {
if existing == enumTypeValue {
*v = enumTypeValue
return nil
@@ -55,13 +56,13 @@ func NewEnumClassFromValue(v string) (*EnumClass, error) {
if ev.IsValid() {
return &ev, nil
} else {
return nil, fmt.Errorf("invalid value '%v' for EnumClass: valid values are %v", v, allowedEnumClassEnumValues)
return nil, fmt.Errorf("invalid value '%v' for EnumClass: valid values are %v", v, AllowedEnumClassEnumValues)
}
}
// IsValid return true if the value is valid for the enum, false otherwise
func (v EnumClass) IsValid() bool {
for _, existing := range allowedEnumClassEnumValues {
for _, existing := range AllowedEnumClassEnumValues {
if existing == v {
return true
}

View File

@@ -25,7 +25,8 @@ const (
DELIVERED OuterEnum = "delivered"
)
var allowedOuterEnumEnumValues = []OuterEnum{
// All allowed values of OuterEnum enum
var AllowedOuterEnumEnumValues = []OuterEnum{
"placed",
"approved",
"delivered",
@@ -38,7 +39,7 @@ func (v *OuterEnum) UnmarshalJSON(src []byte) error {
return err
}
enumTypeValue := OuterEnum(value)
for _, existing := range allowedOuterEnumEnumValues {
for _, existing := range AllowedOuterEnumEnumValues {
if existing == enumTypeValue {
*v = enumTypeValue
return nil
@@ -55,13 +56,13 @@ func NewOuterEnumFromValue(v string) (*OuterEnum, error) {
if ev.IsValid() {
return &ev, nil
} else {
return nil, fmt.Errorf("invalid value '%v' for OuterEnum: valid values are %v", v, allowedOuterEnumEnumValues)
return nil, fmt.Errorf("invalid value '%v' for OuterEnum: valid values are %v", v, AllowedOuterEnumEnumValues)
}
}
// IsValid return true if the value is valid for the enum, false otherwise
func (v OuterEnum) IsValid() bool {
for _, existing := range allowedOuterEnumEnumValues {
for _, existing := range AllowedOuterEnumEnumValues {
if existing == v {
return true
}