diff options
| author | spf13 <[email protected]> | 2014-07-11 10:25:27 -0400 |
|---|---|---|
| committer | spf13 <[email protected]> | 2014-07-11 10:25:27 -0400 |
| commit | 463bdc838f2b35e9307e91d480878bda5fff7232 (patch) | |
| tree | cb01b60a27df6601aa01c06791bec65e0c2674b4 | |
| parent | b02196a78893a71903e9ad98359e7f891b1e7781 (diff) | |
Adding Type() method to the values.
| -rw-r--r-- | bool.go | 4 | ||||
| -rw-r--r-- | duration.go | 4 | ||||
| -rw-r--r-- | flag.go | 1 | ||||
| -rw-r--r-- | float32.go | 4 | ||||
| -rw-r--r-- | float64.go | 4 | ||||
| -rw-r--r-- | int.go | 4 | ||||
| -rw-r--r-- | int32.go | 4 | ||||
| -rw-r--r-- | int64.go | 4 | ||||
| -rw-r--r-- | int8.go | 4 | ||||
| -rw-r--r-- | ip.go | 4 | ||||
| -rw-r--r-- | ipmask.go | 4 | ||||
| -rw-r--r-- | string.go | 3 | ||||
| -rw-r--r-- | uint.go | 4 | ||||
| -rw-r--r-- | uint16.go | 5 | ||||
| -rw-r--r-- | uint32.go | 4 | ||||
| -rw-r--r-- | uint64.go | 4 | ||||
| -rw-r--r-- | uint8.go | 4 |
17 files changed, 65 insertions, 0 deletions
@@ -19,6 +19,10 @@ func (b *boolValue) Set(s string) error { return err } +func (b *boolValue) Type() string { + return "bool" +} + func (b *boolValue) String() string { return fmt.Sprintf("%v", *b) } // BoolVar defines a bool flag with specified name, default value, and usage string. diff --git a/duration.go b/duration.go index db8bfd5..66ed7ac 100644 --- a/duration.go +++ b/duration.go @@ -16,6 +16,10 @@ func (d *durationValue) Set(s string) error { return err } +func (d *durationValue) Type() string { + return "duration" +} + func (d *durationValue) String() string { return (*time.Duration)(d).String() } // DurationVar defines a time.Duration flag with specified name, default value, and usage string. @@ -154,6 +154,7 @@ type Flag struct { type Value interface { String() string Set(string) error + Type() string } // sortFlags returns the flags as a slice in lexicographical sorted order. @@ -19,6 +19,10 @@ func (f *float32Value) Set(s string) error { return err } +func (f *float32Value) Type() string { + return "float32" +} + func (f *float32Value) String() string { return fmt.Sprintf("%v", *f) } // Float32Var defines a float32 flag with specified name, default value, and usage string. @@ -19,6 +19,10 @@ func (f *float64Value) Set(s string) error { return err } +func (f *float64Value) Type() string { + return "float64" +} + func (f *float64Value) String() string { return fmt.Sprintf("%v", *f) } // Float64Var defines a float64 flag with specified name, default value, and usage string. @@ -19,6 +19,10 @@ func (i *intValue) Set(s string) error { return err } +func (i *intValue) Type() string { + return "int" +} + func (i *intValue) String() string { return fmt.Sprintf("%v", *i) } // IntVar defines an int flag with specified name, default value, and usage string. @@ -19,6 +19,10 @@ func (i *int32Value) Set(s string) error { return err } +func (i *int32Value) Type() string { + return "int32" +} + func (i *int32Value) String() string { return fmt.Sprintf("%v", *i) } // Int32Var defines an int32 flag with specified name, default value, and usage string. @@ -19,6 +19,10 @@ func (i *int64Value) Set(s string) error { return err } +func (i *int64Value) Type() string { + return "int64" +} + func (i *int64Value) String() string { return fmt.Sprintf("%v", *i) } // Int64Var defines an int64 flag with specified name, default value, and usage string. @@ -19,6 +19,10 @@ func (i *int8Value) Set(s string) error { return err } +func (i *int8Value) Type() string { + return "int8" +} + func (i *int8Value) String() string { return fmt.Sprintf("%v", *i) } // Int8Var defines an int8 flag with specified name, default value, and usage string. @@ -26,6 +26,10 @@ func (i *ipValue) Get() interface{} { return net.IP(*i) } +func (i *ipValue) Type() string { + return "ip" +} + // IPVar defines an net.IP flag with specified name, default value, and usage string. // The argument p points to an net.IP variable in which to store the value of the flag. func (f *FlagSet) IPVar(p *net.IP, name string, value net.IP, usage string) { @@ -26,6 +26,10 @@ func (i *ipMaskValue) Get() interface{} { return net.IPMask(*i) } +func (i *ipMaskValue) Type() string { + return "ipMask" +} + // Parse IPv4 netmask written in IP form (e.g. 255.255.255.0). // This function should really belong to the net package. func ParseIPv4Mask(s string) net.IPMask { @@ -14,6 +14,9 @@ func (s *stringValue) Set(val string) error { *s = stringValue(val) return nil } +func (s *stringValue) Type() string { + return "string" +} func (s *stringValue) String() string { return fmt.Sprintf("%s", *s) } @@ -19,6 +19,10 @@ func (i *uintValue) Set(s string) error { return err } +func (i *uintValue) Type() string { + return "uint" +} + func (i *uintValue) String() string { return fmt.Sprintf("%v", *i) } // UintVar defines a uint flag with specified name, default value, and usage string. @@ -18,10 +18,15 @@ func (i *uint16Value) Set(s string) error { *i = uint16Value(v) return err } + func (i *uint16Value) Get() interface{} { return uint16(*i) } +func (i *uint16Value) Type() string { + return "uint16" +} + // Uint16Var defines a uint flag with specified name, default value, and usage string. // The argument p points to a uint variable in which to store the value of the flag. func (f *FlagSet) Uint16Var(p *uint16, name string, value uint16, usage string) { @@ -22,6 +22,10 @@ func (i *uint32Value) Get() interface{} { return uint32(*i) } +func (i *uint32Value) Type() string { + return "uint32" +} + // Uint32Var defines a uint32 flag with specified name, default value, and usage string. // The argument p points to a uint32 variable in which to store the value of the flag. func (f *FlagSet) Uint32Var(p *uint32, name string, value uint32, usage string) { @@ -19,6 +19,10 @@ func (i *uint64Value) Set(s string) error { return err } +func (i *uint64Value) Type() string { + return "uint64" +} + func (i *uint64Value) String() string { return fmt.Sprintf("%v", *i) } // Uint64Var defines a uint64 flag with specified name, default value, and usage string. @@ -19,6 +19,10 @@ func (i *uint8Value) Set(s string) error { return err } +func (i *uint8Value) Type() string { + return "uint8" +} + func (i *uint8Value) String() string { return fmt.Sprintf("%v", *i) } // Uint8Var defines a uint8 flag with specified name, default value, and usage string. |
