stringmap

package
v0.17.2 Latest Latest
Warning

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

Go to latest
Published: Jul 28, 2021 License: MIT Imports: 5 Imported by: 0

Documentation

Overview

package stringmap contains utilities to handle common map operations

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

func FromJson added in v0.14.0

func FromJson(j []byte) (out map[string]interface{}, err error)

Converts a json map to a stringmap Integers come through as float64, so must be converted to int to be used

func FromJsonFile added in v0.14.0

func FromJsonFile(f string) (out map[string]interface{}, err error)

func GetBool added in v0.14.0

func GetBool(m map[string]interface{}, key string) (bool, bool)

GetBool gets a boolean out of a map of interfaces keyed by a string. Returns the bool and true if found, or false and false if not, or the found item was not a bool.

func GetJsonFloat

func GetJsonFloat(m map[string]interface{}, key string) (float64, bool)

GetJsonFloat gets a float64 out of a map of interfaces that were unmarshalled from json. Json unmarshalling creates json numbers, and these have to be coerced into integers or floats. Returns an int and true if found, and a zero and false if not, or the found item was not a coercible number.

func GetJsonInt

func GetJsonInt(m map[string]interface{}, key string) (int, bool)

GetJsonInt gets an integer out of a map of interfaces that were unmarshalled from json. Json unmarshalling creates json numbers, and these have to be coerced into integers or floats. Returns an int and true if found, and a zero and false if not, or the found item was not a coercible number.

func GetString

func GetString(m map[string]interface{}, key string) (string, bool)

GetString gets a string out of a map of interfaces keyed by a string. Returns the string and true if found, or an empty string and false if not, or the found item was not a string.

func JoinStrings added in v0.3.1

func JoinStrings(m map[string]string, kvSep string, itemSep string) (ret string)

JoinStrings will join a map[string]string with kvSep in between each key and value, and itemSep in between each group of those

func Range

func Range(m interface{}, f func(key string, val interface{}) bool)

Range is a convenience method to range over any map that uses strings as keys in a predictable order from lowest to highest. It uses a similar Range type function to the sync.Map.Range function.

func SortedKeys

func SortedKeys(i interface{}) []string

SortedKeys returns the keys of any map that uses strings as keys, sorted alphabetically. Note that even though we are using reflection here, this process is only slightly slower compared to not using reflection, so feel free to use it in all situations.

Example
m := map[string]int{
	"One":   1,
	"Two":   2,
	"Three": 3,
}

k := SortedKeys(m)
fmt.Print(k)
Output:

[One Three Two]

func ToStringStringMap added in v0.14.0

func ToStringStringMap(in map[string]interface{}) map[string]string

ToStringStringMap converts a map[string]interface{} to map[string]string. Any items in the incoming map that are not strings are ignored.

Types

This section is empty.

Jump to

Keyboard shortcuts

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