stringmapflag

package
v0.0.0-...-1f88c41 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 17, 2024 License: Apache-2.0 Imports: 5 Imported by: 15

Documentation

Overview

Package stringmapflag provides a flag.Value that, when parsed, augments a map[string]string with the supplied parameter. The parameter is expressed as a key[=value] option.

Example

Assuming the flag option, "opt", is bound to a stringmapflag.Value, and the following arguments are parsed:

-opt foo=bar
-opt baz

The resulting map would be equivalent to: map[string]string {"foo": "bar", "baz": ""}

Example
v := new(Value)
fs := flag.NewFlagSet("test", flag.ContinueOnError)
fs.Var(v, "option", "Appends a key[=value] option.")

// Simulate user input.
if err := fs.Parse([]string{
	"-option", "foo=bar",
	"-option", "baz",
}); err != nil {
	panic(err)
}

m, _ := json.MarshalIndent(v, "", "  ")
fmt.Println("Parsed options:", string(m))
Output:

Parsed options: {
  "baz": "",
  "foo": "bar"
}

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Value

type Value map[string]string

Value is a flag.Value implementation that stores arbitrary "key[=value]" command-line flags as a string map.

func (*Value) Set

func (v *Value) Set(key string) error

Set implements flag.Value.

func (*Value) String

func (v *Value) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL