flag

package
v2.2.2 Latest Latest
Warning

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

Go to latest
Published: Jul 8, 2020 License: MIT Imports: 5 Imported by: 0

Documentation

Overview

Package flag implements encoding and decoding between flag arguments and a typed Configuration.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Decode

func Decode(args []string, element interface{}) error

Decode decodes the given flag arguments into the given element. The operation goes through four stages roughly summarized as: flag arguments -> parsed map of flags map -> tree of untyped nodes untyped nodes -> nodes augmented with metadata such as kind (inferred from element) "typed" nodes -> typed element.

func Encode

func Encode(element interface{}) ([]parser.Flat, error)

Encode encodes the configuration in element into the flags represented in the returned Flats. The operation goes through three stages roughly summarized as: typed configuration in element -> tree of untyped nodes untyped nodes -> nodes augmented with metadata such as kind (inferred from element) "typed" nodes -> flags with default values (determined by type/kind).

func Parse

func Parse(args []string, element interface{}) (map[string]string, error)

Parse parses the command-line flag arguments into a map, using the type information in element to discriminate whether a flag is supposed to be a bool, and other such ambiguities.

Types

This section is empty.

Jump to

Keyboard shortcuts

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