// Code generated by go-enum DO NOT EDIT. // Version: // Revision: // Build Date: // Built By: package config import ( "fmt" "strings" ) const ( // BytesSourceTypeText is a BytesSourceType of type Text. // Inline YAML block. BytesSourceTypeText BytesSourceType = iota + 1 // BytesSourceTypeHttp is a BytesSourceType of type Http. // HTTP(S). BytesSourceTypeHttp // BytesSourceTypeFile is a BytesSourceType of type File. // Local file. BytesSourceTypeFile ) var ErrInvalidBytesSourceType = fmt.Errorf("not a valid BytesSourceType, try [%s]", strings.Join(_BytesSourceTypeNames, ", ")) const _BytesSourceTypeName = "texthttpfile" var _BytesSourceTypeNames = []string{ _BytesSourceTypeName[0:4], _BytesSourceTypeName[4:8], _BytesSourceTypeName[8:12], } // BytesSourceTypeNames returns a list of possible string values of BytesSourceType. func BytesSourceTypeNames() []string { tmp := make([]string, len(_BytesSourceTypeNames)) copy(tmp, _BytesSourceTypeNames) return tmp } // BytesSourceTypeValues returns a list of the values for BytesSourceType func BytesSourceTypeValues() []BytesSourceType { return []BytesSourceType{ BytesSourceTypeText, BytesSourceTypeHttp, BytesSourceTypeFile, } } var _BytesSourceTypeMap = map[BytesSourceType]string{ BytesSourceTypeText: _BytesSourceTypeName[0:4], BytesSourceTypeHttp: _BytesSourceTypeName[4:8], BytesSourceTypeFile: _BytesSourceTypeName[8:12], } // String implements the Stringer interface. func (x BytesSourceType) String() string { if str, ok := _BytesSourceTypeMap[x]; ok { return str } return fmt.Sprintf("BytesSourceType(%d)", x) } // IsValid provides a quick way to determine if the typed value is // part of the allowed enumerated values func (x BytesSourceType) IsValid() bool { _, ok := _BytesSourceTypeMap[x] return ok } var _BytesSourceTypeValue = map[string]BytesSourceType{ _BytesSourceTypeName[0:4]: BytesSourceTypeText, _BytesSourceTypeName[4:8]: BytesSourceTypeHttp, _BytesSourceTypeName[8:12]: BytesSourceTypeFile, } // ParseBytesSourceType attempts to convert a string to a BytesSourceType. func ParseBytesSourceType(name string) (BytesSourceType, error) { if x, ok := _BytesSourceTypeValue[name]; ok { return x, nil } return BytesSourceType(0), fmt.Errorf("%s is %w", name, ErrInvalidBytesSourceType) } // MarshalText implements the text marshaller method. func (x BytesSourceType) MarshalText() ([]byte, error) { return []byte(x.String()), nil } // UnmarshalText implements the text unmarshaller method. func (x *BytesSourceType) UnmarshalText(text []byte) error { name := string(text) tmp, err := ParseBytesSourceType(name) if err != nil { return err } *x = tmp return nil }