summaryrefslogtreecommitdiff
path: root/parse.go
diff options
context:
space:
mode:
authorMario Hros <[email protected]>2017-03-30 20:32:39 +0200
committerMario Hros <[email protected]>2017-03-30 20:32:39 +0200
commit58e62faa3d380dc61dc3be3ce78672081779c0fc (patch)
tree65f1eb7fd4a0be1be79561ae98fa6d25915fd0b2 /parse.go
parent8111804d1774e2f9e2f7f734a15d2fb9ca684685 (diff)
required positional args
Diffstat (limited to 'parse.go')
-rw-r--r--parse.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/parse.go b/parse.go
index 4f62c60..ecbb7e4 100644
--- a/parse.go
+++ b/parse.go
@@ -356,6 +356,9 @@ func process(specs []*spec, args []string) error {
for _, spec := range specs {
if spec.positional {
if spec.multiple {
+ if spec.required && len(positionals) == 0 {
+ return fmt.Errorf("%s is required", spec.long)
+ }
err := setSlice(spec.dest, positionals, true)
if err != nil {
return fmt.Errorf("error processing %s: %v", spec.long, err)