| 242 | } |
| 243 | |
| 244 | func (c *flagContext) setDefaultFlagValueIfAny() { |
| 245 | var v interface{} |
| 246 | |
| 247 | for flgName, flg := range c.cmdFlags { |
| 248 | v = flg.GetValue() |
| 249 | switch v.(type) { |
| 250 | case bool: |
| 251 | if v.(bool) != false { |
| 252 | c.flagsets[flgName] = &BoolFlag{Name: flgName, Value: v.(bool)} |
| 253 | } |
| 254 | case int: |
| 255 | if v.(int) != 0 { |
| 256 | c.flagsets[flgName] = &IntFlag{Name: flgName, Value: v.(int)} |
| 257 | } |
| 258 | case float64: |
| 259 | if v.(float64) != 0 { |
| 260 | c.flagsets[flgName] = &Float64Flag{Name: flgName, Value: v.(float64)} |
| 261 | } |
| 262 | case string: |
| 263 | if len(v.(string)) != 0 { |
| 264 | c.flagsets[flgName] = &StringFlag{Name: flgName, Value: v.(string)} |
| 265 | } |
| 266 | case []string: |
| 267 | if len(v.([]string)) != 0 { |
| 268 | c.flagsets[flgName] = &StringSliceFlag{Name: flgName, Value: v.([]string)} |
| 269 | } |
| 270 | } |
| 271 | } |
| 272 | |
| 273 | } |
| 274 | |
| 275 | func (c *flagContext) getFlagNameWithShortName(shortName string) string { |
| 276 | for n, f := range c.cmdFlags { |