Documentation ¶
Index ¶
- func AppendIfMissing(slice []string, i string) []string
- func Difference(a, b []string, lowercase bool) []string
- func EqualStringMaps(a, b map[string]string) bool
- func EquivalentSlices(a, b []string) bool
- func GlobbedStringsMatch(item, val string) bool
- func MergeSlices(args ...[]string) []string
- func ParseArbitraryKeyValues(input string, out map[string]string, sep string) error
- func ParseArbitraryStringSlice(input string, sep string) []string
- func ParseDedupAndSortStrings(input string, sep string) []string
- func ParseDedupLowercaseAndSortStrings(input string, sep string) []string
- func ParseKeyValues(input string, out map[string]string, sep string) error
- func ParseStringSlice(input string, sep string) []string
- func RemoveDuplicates(items []string, lowercase bool) []string
- func RemoveEmpty(items []string) []string
- func StrListContains(haystack []string, needle string) bool
- func StrListContainsGlob(haystack []string, needle string) bool
- func StrListDelete(s []string, d string) []string
- func StrListSubset(super, sub []string) bool
- func TrimStrings(items []string) []string
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AppendIfMissing ¶
AppendIfMissing adds a string to a slice if the given string is not present
func Difference ¶
Difference returns the set difference (A - B) of the two given slices. The result will also remove any duplicated values in set A regardless of whether that matches any values in set B.
func EqualStringMaps ¶
EqualStringMaps tests whether two map[string]string objects are equal. Equal means both maps have the same sets of keys and values. This function is 6-10x faster than a call to reflect.DeepEqual().
func EquivalentSlices ¶
EquivalentSlices checks whether the given string sets are equivalent, as in, they contain the same values.
func GlobbedStringsMatch ¶
GlobbedStringsMatch compares item to val with support for a leading and/or trailing wildcard '*' in item.
func MergeSlices ¶
MergeSlices adds an arbitrary number of slices together, uniquely
func ParseArbitraryKeyValues ¶
ParseArbitraryKeyValues parses arbitrary <key,value> tuples. The input can be one of the following:
- JSON string
- Base64 encoded JSON string
- Comma separated list of `<key>=<value>` pairs
- Base64 encoded string containing comma separated list of `<key>=<value>` pairs
Input will be parsed into the output parameter, which should be a non-nil map[string]string.
func ParseArbitraryStringSlice ¶
ParseArbitraryStringSlice parses arbitrary string slice. The input can be one of the following: * JSON string * Base64 encoded JSON string * `sep` separated list of values * Base64-encoded string containing a `sep` separated list of values
Note that the separator is ignored if the input is found to already be in a structured format (e.g., JSON)
The output will always be a valid slice but may be of length zero.
func ParseDedupAndSortStrings ¶
ParseDedupAndSortStrings parses a comma separated list of strings into a slice of strings. The return slice will be sorted and will not contain duplicate or empty items.
func ParseDedupLowercaseAndSortStrings ¶
ParseDedupLowercaseAndSortStrings parses a comma separated list of strings into a slice of strings. The return slice will be sorted and will not contain duplicate or empty items. The values will be converted to lower case.
func ParseKeyValues ¶
ParseKeyValues parses a comma separated list of `<key>=<value>` tuples into a map[string]string.
func ParseStringSlice ¶
ParseStringSlice parses a `sep`-separated list of strings into a []string with surrounding whitespace removed.
The output will always be a valid slice but may be of length zero.
func RemoveDuplicates ¶
RemoveDuplicates removes duplicate and empty elements from a slice of strings. This also may convert the items in the slice to lower case and returns a sorted slice.
func RemoveEmpty ¶
RemoveEmpty removes empty elements from a slice of strings
func StrListContains ¶
StrListContains looks for a string in a list of strings.
func StrListContainsGlob ¶
StrListContainsGlob looks for a string in a list of strings and allows globs.
func StrListDelete ¶
StrListDelete removes the first occurrence of the given item from the slice of strings if the item exists.
func StrListSubset ¶
StrListSubset checks if a given list is a subset of another set
func TrimStrings ¶
TrimStrings takes a slice of strings and returns a slice of strings with trimmed spaces
Types ¶
This section is empty.