// Code generated by "enumer -type IDPIntentState -transform lower -trimprefix IDPIntentState -sql"; DO NOT EDIT. package domain import ( "database/sql/driver" "fmt" "strings" ) const _IDPIntentStateName = "startedsucceededfailed" var _IDPIntentStateIndex = [...]uint8{0, 7, 16, 22} const _IDPIntentStateLowerName = "startedsucceededfailed" func (i IDPIntentState) String() string { if i >= IDPIntentState(len(_IDPIntentStateIndex)-1) { return fmt.Sprintf("IDPIntentState(%d)", i) } return _IDPIntentStateName[_IDPIntentStateIndex[i]:_IDPIntentStateIndex[i+1]] } // An "invalid array index" compiler error signifies that the constant values have changed. // Re-run the stringer command to generate them again. func _IDPIntentStateNoOp() { var x [1]struct{} _ = x[IDPIntentStateStarted-(0)] _ = x[IDPIntentStateSucceeded-(1)] _ = x[IDPIntentStateFailed-(2)] } var _IDPIntentStateValues = []IDPIntentState{IDPIntentStateStarted, IDPIntentStateSucceeded, IDPIntentStateFailed} var _IDPIntentStateNameToValueMap = map[string]IDPIntentState{ _IDPIntentStateName[0:7]: IDPIntentStateStarted, _IDPIntentStateLowerName[0:7]: IDPIntentStateStarted, _IDPIntentStateName[7:16]: IDPIntentStateSucceeded, _IDPIntentStateLowerName[7:16]: IDPIntentStateSucceeded, _IDPIntentStateName[16:22]: IDPIntentStateFailed, _IDPIntentStateLowerName[16:22]: IDPIntentStateFailed, } var _IDPIntentStateNames = []string{ _IDPIntentStateName[0:7], _IDPIntentStateName[7:16], _IDPIntentStateName[16:22], } // IDPIntentStateString retrieves an enum value from the enum constants string name. // Throws an error if the param is not part of the enum. func IDPIntentStateString(s string) (IDPIntentState, error) { if val, ok := _IDPIntentStateNameToValueMap[s]; ok { return val, nil } if val, ok := _IDPIntentStateNameToValueMap[strings.ToLower(s)]; ok { return val, nil } return 0, fmt.Errorf("%s does not belong to IDPIntentState values", s) } // IDPIntentStateValues returns all values of the enum func IDPIntentStateValues() []IDPIntentState { return _IDPIntentStateValues } // IDPIntentStateStrings returns a slice of all String values of the enum func IDPIntentStateStrings() []string { strs := make([]string, len(_IDPIntentStateNames)) copy(strs, _IDPIntentStateNames) return strs } // IsAIDPIntentState returns "true" if the value is listed in the enum definition. "false" otherwise func (i IDPIntentState) IsAIDPIntentState() bool { for _, v := range _IDPIntentStateValues { if i == v { return true } } return false } func (i IDPIntentState) Value() (driver.Value, error) { return i.String(), nil } func (i *IDPIntentState) Scan(value interface{}) error { if value == nil { return nil } var str string switch v := value.(type) { case []byte: str = string(v) case string: str = v case fmt.Stringer: str = v.String() default: return fmt.Errorf("invalid value of IDPIntentState: %[1]T(%[1]v)", value) } val, err := IDPIntentStateString(str) if err != nil { return err } *i = val return nil }