|
|
|
@ -5,6 +5,7 @@ import (
|
|
|
|
|
"flag"
|
|
|
|
|
"strconv"
|
|
|
|
|
"strings"
|
|
|
|
|
"time"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
// Context is a type that is passed through to
|
|
|
|
@ -29,6 +30,11 @@ func (c *Context) Int(name string) int {
|
|
|
|
|
return lookupInt(name, c.flagSet)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Looks up the value of a local time.Duration flag, returns 0 if no time.Duration flag exists
|
|
|
|
|
func (c *Context) Duration(name string) time.Duration {
|
|
|
|
|
return lookupDuration(name, c.flagSet)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Looks up the value of a local float64 flag, returns 0 if no float64 flag exists
|
|
|
|
|
func (c *Context) Float64(name string) float64 {
|
|
|
|
|
return lookupFloat64(name, c.flagSet)
|
|
|
|
@ -69,6 +75,11 @@ func (c *Context) GlobalInt(name string) int {
|
|
|
|
|
return lookupInt(name, c.globalSet)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Looks up the value of a global time.Duration flag, returns 0 if no time.Duration flag exists
|
|
|
|
|
func (c *Context) GlobalDuration(name string) time.Duration {
|
|
|
|
|
return lookupDuration(name, c.globalSet)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Looks up the value of a global bool flag, returns false if no bool flag exists
|
|
|
|
|
func (c *Context) GlobalBool(name string) bool {
|
|
|
|
|
return lookupBool(name, c.globalSet)
|
|
|
|
@ -174,6 +185,18 @@ func lookupInt(name string, set *flag.FlagSet) int {
|
|
|
|
|
return 0
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func lookupDuration(name string, set *flag.FlagSet) time.Duration {
|
|
|
|
|
f := set.Lookup(name)
|
|
|
|
|
if f != nil {
|
|
|
|
|
val, err := time.ParseDuration(f.Value.String())
|
|
|
|
|
if err == nil {
|
|
|
|
|
return val
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return 0
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func lookupFloat64(name string, set *flag.FlagSet) float64 {
|
|
|
|
|
f := set.Lookup(name)
|
|
|
|
|
if f != nil {
|
|
|
|
|