1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package types
import (
"fmt"
)
type OutputFormat int
const (
FormatUnknown OutputFormat = iota
FormatCLI
FormatWaybar
)
func (outputFormat *OutputFormat) Set(value string) (err error) {
*outputFormat, err = ParseOutputFormat(value)
return
}
func (outputFormat *OutputFormat) String() string {
switch *outputFormat {
case FormatUnknown: return "unknown"
case FormatCLI: return "cli"
case FormatWaybar: return "waybar"
}
return ""
}
func ParseOutputFormat(formatStr string) (OutputFormat, error) {
switch formatStr {
case "cli": return FormatCLI, nil
case "waybar": return FormatWaybar, nil
}
return FormatUnknown, fmt.Errorf("Faild to parse output-format: %s\n", formatStr)
}