vault/command/healthcheck/resultstatus_enumer.go
Christopher Swenson 961bf20bdb
Use enumer to generate String() methods for most enums (#25705)
We have many hand-written String() methods (and similar) for enums.
These require more maintenance and are more error-prone than using
automatically generated methods. In addition, the auto-generated
versions can be more efficient.

Here, we switch to using https://github.com/loggerhead/enumer, itself
a fork of https://github.com/diegostamigni/enumer, no longer maintained,
and a fork of the mostly standard tool
https://pkg.go.dev/golang.org/x/tools/cmd/stringer.
We use this fork of enumer for Go 1.20+ compatibility and because
we require the `-transform` flag to be able to generate
constants that match our current code base.

Some enums were not targeted for this change:
2024-04-17 11:14:14 -07:00

55 lines
1.6 KiB
Go

// Code generated by "enumer -type=ResultStatus -trimprefix=Result -transform=snake"; DO NOT EDIT.
package healthcheck
import (
"fmt"
)
const _ResultStatusName = "not_applicableokinformationalwarningcriticalinvalid_versioninsufficient_permissions"
var _ResultStatusIndex = [...]uint8{0, 14, 16, 29, 36, 44, 59, 83}
func (i ResultStatus) String() string {
if i < 0 || i >= ResultStatus(len(_ResultStatusIndex)-1) {
return fmt.Sprintf("ResultStatus(%d)", i)
}
return _ResultStatusName[_ResultStatusIndex[i]:_ResultStatusIndex[i+1]]
}
var _ResultStatusValues = []ResultStatus{0, 1, 2, 3, 4, 5, 6}
var _ResultStatusNameToValueMap = map[string]ResultStatus{
_ResultStatusName[0:14]: 0,
_ResultStatusName[14:16]: 1,
_ResultStatusName[16:29]: 2,
_ResultStatusName[29:36]: 3,
_ResultStatusName[36:44]: 4,
_ResultStatusName[44:59]: 5,
_ResultStatusName[59:83]: 6,
}
// ResultStatusString retrieves an enum value from the enum constants string name.
// Throws an error if the param is not part of the enum.
func ResultStatusString(s string) (ResultStatus, error) {
if val, ok := _ResultStatusNameToValueMap[s]; ok {
return val, nil
}
return 0, fmt.Errorf("%s does not belong to ResultStatus values", s)
}
// ResultStatusValues returns all values of the enum
func ResultStatusValues() []ResultStatus {
return _ResultStatusValues
}
// IsAResultStatus returns "true" if the value is listed in the enum definition. "false" otherwise
func (i ResultStatus) IsAResultStatus() bool {
for _, v := range _ResultStatusValues {
if i == v {
return true
}
}
return false
}