summaryrefslogtreecommitdiff
path: root/example_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'example_test.go')
-rw-r--r--example_test.go15
1 files changed, 15 insertions, 0 deletions
diff --git a/example_test.go b/example_test.go
index 6fb5197..c34effa 100644
--- a/example_test.go
+++ b/example_test.go
@@ -71,6 +71,21 @@ func Example_multipleValues() {
fmt.Printf("Fetching the following IDs from %s: %q", args.Database, args.IDs)
}
+// This eample demonstrates multiple value arguments that can be mixed with
+// other arguments.
+func Example_multipleMixed() {
+ os.Args = []string{"./example", "-c", "cmd1", "db1", "-f", "file1", "db2", "-c", "cmd2", "-f", "file2", "-f", "file3", "db3", "-c", "cmd3"}
+ var args struct {
+ Commands []string `arg:"-c,separate"`
+ Files []string `arg:"-f,separate"`
+ Databases []string `arg:"positional"`
+ }
+ MustParse(&args)
+ fmt.Println("Commands:", args.Commands)
+ fmt.Println("Files", args.Files)
+ fmt.Println("Databases", args.Databases)
+}
+
// This example shows the usage string generated by go-arg
func Example_usageString() {
// These are the args you would pass in on the command line