enum.go 364 Bytes
Newer Older
1 2 3 4 5 6 7 8
package enum

import (
	"strings"
)

// EnumString returns a comma-separated string of the enum values.
// This is primarily used to generate a cli flag.
9
func EnumString[T ~string](values []T) string {
10 11
	var out strings.Builder
	for i, v := range values {
12
		out.WriteString(string(v))
13 14 15 16 17 18
		if i+1 < len(values) {
			out.WriteString(", ")
		}
	}
	return out.String()
}