aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--flag.go6
1 files changed, 6 insertions, 0 deletions
diff --git a/flag.go b/flag.go
index 60c2038..e02abfe 100644
--- a/flag.go
+++ b/flag.go
@@ -190,9 +190,15 @@ type Value interface {
Type() string
}
+// SliceValue is a secondary interface to all flags which hold a list
+// of values. This allows full control over the value of list flags,
+// and avoids complicated marshalling and unmarshalling to csv.
type SliceValue interface {
+ // Append adds the specified value to the end of the flag value list.
Append(string) error
+ // Replace will fully overwrite any data currently in the flag value list.
Replace([]string) error
+ // GetSlice returns the flag value list as an array of strings.
GetSlice() []string
}