mapUtil

package
v0.0.0-...-e50112c Latest Latest
Warning

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

Go to latest
Published: Mar 22, 2024 License: BSD-3-Clause Imports: 13 Imported by: 0

README

Map操作

  • diff/union:求两个或多个 map 的交集/并集。
  • equal: 比较两个或多个 map 是否相等(key、value都相等)

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Diff

func Diff(src interface{}, dest ...interface{}) interface{}

求两个或多个 map 的差集:

如果 key 在 src 中存在、但 dest 中不存在,则结果集中的值为该类型的默认值;
如果 key 在 dest 中存在、但 src 中不存在、或者值与 src 中不相等,则结果集中的值为 dest 中的值。

src 和 dest 的类型必须相同。

func Diff2

func Diff2(src interface{}, dest interface{}, f ...func(a, b interface{}) bool) (matches, changed, added, removed interface{})

func DiffStr

func DiffStr(src map[string]string, dest ...map[string]string) map[string]string

求两个或多个 map 的差集:

如果 key 在 src 中存在、但 dest 中不存在,则结果集中的值为该类型的默认值;
如果 key 在 dest 中存在、但 src 中不存在、或者值与 src 中不相等,则结果集中的值为 dest 中的值。

func DiffStr2

func DiffStr2(src map[string]string, dest map[string]string) (matches, changed, added, removed map[string]string)

求两个或多个 map 的差集:

如果 key 在 src 中存在、但 dest 中不存在,则结果集中的值为该类型的默认值;
如果 key 在 dest 中存在、但 src 中不存在、或者值与 src 中不相等,则结果集中的值为 dest 中的值。

func DiffStrObject

func DiffStrObject(src map[string]interface{}, dest ...map[string]interface{}) map[string]interface{}

求两个或多个 map 的差集:

如果 key 在 src 中存在、但 dest 中不存在,则结果集中的值为该类型的默认值;
如果 key 在 dest 中存在、但 src 中不存在、或者值与 src 中不相等,则结果集中的值为 dest 中的值。

func DiffStrObject2

func DiffStrObject2(src map[string]interface{}, dest map[string]interface{}, f ...func(a, b interface{}) bool) (matches, changed, added, removed map[string]interface{})

func Find

func Find(dict interface{}, match func(key, val interface{}) bool) interface{}

从字典中查找符合条件的元素,并返回包含这些元素的新字典

slice: 要查找的数组
match: 匹配函数
count: 最多返回的数量,<0 表示全部

func Int64BoolKeys

func Int64BoolKeys(m map[int64]bool) []int64

func Int64Keys

func Int64Keys(m interface{}) (keys []int64)

func IntBoolKeys

func IntBoolKeys(m map[int]bool) []int

func IntKeys

func IntKeys(m interface{}) (keys []int)

func IntValues

func IntValues(m interface{}) (keys []int)

func Keys

func Keys(m interface{}) (keys interface{})

func LeftDiffKeyInt64

func LeftDiffKeyInt64(left map[int64]bool, right map[int64]bool, sorted ...bool) []int64

LeftDiffKeyInt64 提取Key差异:左边有,右边没有

func MustUnFlatMap

func MustUnFlatMap(in map[string]interface{}, sep ...string) interface{}

func MustUnFlatMapF

func MustUnFlatMapF(in map[string]interface{}, splitKey func(path string) (prefix, key string)) interface{}

func RemoveMapDuplicate

func RemoveMapDuplicate(arr []map[string]interface{}, keys ...string) []map[string]interface{}

func SortedInt64Keys

func SortedInt64Keys(m interface{}) (keys []int64)

func SortedIntKeys

func SortedIntKeys(m interface{}) (keys []int)

func SortedIntValues

func SortedIntValues(m interface{}) (keys []int)

func SortedStringKeys

func SortedStringKeys(m interface{}) (keys []string)

func SortedStringValues

func SortedStringValues(m interface{}) (keys []string)

func StrBoolKeys

func StrBoolKeys(m map[string]bool) []string

func StringKeys

func StringKeys(m interface{}) (keys []string)

func StringValues

func StringValues(m interface{}) (keys []string)

func UnFlatMap

func UnFlatMap(in map[string]interface{}, sep ...string) (interface{}, error)

func UnFlatMapF

func UnFlatMapF(in map[string]interface{}, splitKey func(path string) (prefix, key string)) (interface{}, error)

func Union

func Union(src interface{}, dest ...interface{}) interface{}

求两个或多个 map 的并集

func UnionStr

func UnionStr(src map[string]string, dest ...map[string]string) map[string]string

func UnionStrObject

func UnionStrObject(src map[string]interface{}, dest ...map[string]interface{}) map[string]interface{}

func Values

func Values(m interface{}) (values interface{})

Types

type CaseInsensitiveStringMap

type CaseInsensitiveStringMap map[string]string

func NewCaseInsensitiveStringMap

func NewCaseInsensitiveStringMap(a ...map[string]string) CaseInsensitiveStringMap

func ToCaseInsensitiveStringMapSlice

func ToCaseInsensitiveStringMapSlice(src []map[string]string) (dest []CaseInsensitiveStringMap)

func (CaseInsensitiveStringMap) Contains

func (this CaseInsensitiveStringMap) Contains(key string) bool

func (CaseInsensitiveStringMap) ContainsAll

func (this CaseInsensitiveStringMap) ContainsAll(keys []string) bool

func (CaseInsensitiveStringMap) ContainsAny

func (this CaseInsensitiveStringMap) ContainsAny(keys ...string) bool

func (CaseInsensitiveStringMap) Copy

func (CaseInsensitiveStringMap) Delete

func (this CaseInsensitiveStringMap) Delete(key ...string)

func (*CaseInsensitiveStringMap) FromDB

func (this *CaseInsensitiveStringMap) FromDB(bytes []byte) error

func (CaseInsensitiveStringMap) Get

func (this CaseInsensitiveStringMap) Get(key string, defaultVal ...string) (val string, found bool)

func (CaseInsensitiveStringMap) GetBool

func (this CaseInsensitiveStringMap) GetBool(key string, defaultVal ...bool) (val bool, found bool, err error)

func (CaseInsensitiveStringMap) GetFloat

func (this CaseInsensitiveStringMap) GetFloat(key string, defaultVal ...float64) (val float64, found bool, err error)

func (CaseInsensitiveStringMap) GetInt

func (this CaseInsensitiveStringMap) GetInt(key string, defaultVal ...int) (val int, found bool, err error)

func (CaseInsensitiveStringMap) GetInt64

func (this CaseInsensitiveStringMap) GetInt64(key string, defaultVal ...int64) (val int64, found bool, err error)

func (CaseInsensitiveStringMap) GetToObject

func (this CaseInsensitiveStringMap) GetToObject(key string, obj interface{}) (found bool, err error)

func (CaseInsensitiveStringMap) Keys

func (this CaseInsensitiveStringMap) Keys() (arr []string)

func (CaseInsensitiveStringMap) Mapping

func (this CaseInsensitiveStringMap) Mapping(f func(key, val string) (newKey, newVal string)) CaseInsensitiveStringMap

func (CaseInsensitiveStringMap) MustGet

func (this CaseInsensitiveStringMap) MustGet(key string, defaultVal ...string) string

func (CaseInsensitiveStringMap) MustGetBool

func (this CaseInsensitiveStringMap) MustGetBool(key string, defaultVal ...bool) bool

func (CaseInsensitiveStringMap) MustGetFloat

func (this CaseInsensitiveStringMap) MustGetFloat(key string, defaultVal ...float64) float64

func (CaseInsensitiveStringMap) MustGetInt

func (this CaseInsensitiveStringMap) MustGetInt(key string, defaultVal ...int) int

func (CaseInsensitiveStringMap) MustGetInt64

func (this CaseInsensitiveStringMap) MustGetInt64(key string, defaultVal ...int64) int64

func (CaseInsensitiveStringMap) Set

func (this CaseInsensitiveStringMap) Set(key, val string)

func (CaseInsensitiveStringMap) SetMulti

func (this CaseInsensitiveStringMap) SetMulti(a ...map[string]string)

func (CaseInsensitiveStringMap) Subset

func (CaseInsensitiveStringMap) SubsetF

func (this CaseInsensitiveStringMap) SubsetF(f func(key, val string) bool) CaseInsensitiveStringMap

func (CaseInsensitiveStringMap) ToDB

func (this CaseInsensitiveStringMap) ToDB() (bytes []byte, err error)

func (CaseInsensitiveStringMap) ToLowerKeyMap

func (this CaseInsensitiveStringMap) ToLowerKeyMap() StringMap

func (CaseInsensitiveStringMap) ToStringObjectMap

func (this CaseInsensitiveStringMap) ToStringObjectMap(f ...func(key, val string) (newKey string, newVal interface{})) StringObjectMap

func (CaseInsensitiveStringMap) TrimEmptyValues

func (this CaseInsensitiveStringMap) TrimEmptyValues() CaseInsensitiveStringMap

移除值为空的元素。

func (CaseInsensitiveStringMap) Values

func (this CaseInsensitiveStringMap) Values() (arr []string)

type CaseInsensitiveStringObjectMap

type CaseInsensitiveStringObjectMap map[string]interface{}

func NewCaseInsensitiveStringObjectMap

func NewCaseInsensitiveStringObjectMap(a ...map[string]interface{}) CaseInsensitiveStringObjectMap

func ToCaseInsensitiveStringObjectMapSlice

func ToCaseInsensitiveStringObjectMapSlice(src []map[string]interface{}) (dest []CaseInsensitiveStringObjectMap)

func (CaseInsensitiveStringObjectMap) Contains

func (this CaseInsensitiveStringObjectMap) Contains(key string) bool

func (CaseInsensitiveStringObjectMap) ContainsAll

func (this CaseInsensitiveStringObjectMap) ContainsAll(keys []string) bool

func (CaseInsensitiveStringObjectMap) ContainsAny

func (this CaseInsensitiveStringObjectMap) ContainsAny(keys ...string) bool

func (CaseInsensitiveStringObjectMap) Copy

func (CaseInsensitiveStringObjectMap) Delete

func (this CaseInsensitiveStringObjectMap) Delete(key ...string)

func (*CaseInsensitiveStringObjectMap) FromDB

func (this *CaseInsensitiveStringObjectMap) FromDB(bytes []byte) error

func (CaseInsensitiveStringObjectMap) Get

func (this CaseInsensitiveStringObjectMap) Get(key string, defaultVal ...interface{}) (val interface{}, found bool)

func (CaseInsensitiveStringObjectMap) GetBool

func (this CaseInsensitiveStringObjectMap) GetBool(key string, defaultVal ...bool) (val bool, found bool, err error)

func (CaseInsensitiveStringObjectMap) GetFloat

func (this CaseInsensitiveStringObjectMap) GetFloat(key string, defaultVal ...float64) (val float64, found bool, err error)

func (CaseInsensitiveStringObjectMap) GetInt

func (this CaseInsensitiveStringObjectMap) GetInt(key string, defaultVal ...int) (val int, found bool, err error)

func (CaseInsensitiveStringObjectMap) GetInt64

func (this CaseInsensitiveStringObjectMap) GetInt64(key string, defaultVal ...int64) (val int64, found bool, err error)

func (CaseInsensitiveStringObjectMap) GetString

func (this CaseInsensitiveStringObjectMap) GetString(key string, defaultVal ...string) (val string, found bool, err error)

func (CaseInsensitiveStringObjectMap) GetToObject

func (this CaseInsensitiveStringObjectMap) GetToObject(key string, obj interface{}) (found bool, err error)

func (CaseInsensitiveStringObjectMap) Keys

func (this CaseInsensitiveStringObjectMap) Keys() (arr []string)

func (CaseInsensitiveStringObjectMap) Mapping

func (this CaseInsensitiveStringObjectMap) Mapping(f func(key string, val interface{}) (newKey string, newVal interface{})) CaseInsensitiveStringObjectMap

func (CaseInsensitiveStringObjectMap) MustGet

func (this CaseInsensitiveStringObjectMap) MustGet(key string, defaultVal ...interface{}) interface{}

func (CaseInsensitiveStringObjectMap) MustGetBool

func (this CaseInsensitiveStringObjectMap) MustGetBool(key string, defaultVal ...bool) bool

func (CaseInsensitiveStringObjectMap) MustGetFloat

func (this CaseInsensitiveStringObjectMap) MustGetFloat(key string, defaultVal ...float64) float64

func (CaseInsensitiveStringObjectMap) MustGetInt

func (this CaseInsensitiveStringObjectMap) MustGetInt(key string, defaultVal ...int) int

func (CaseInsensitiveStringObjectMap) MustGetInt64

func (this CaseInsensitiveStringObjectMap) MustGetInt64(key string, defaultVal ...int64) int64

func (CaseInsensitiveStringObjectMap) MustGetString

func (this CaseInsensitiveStringObjectMap) MustGetString(key string, defaultVal ...string) string

func (CaseInsensitiveStringObjectMap) Set

func (this CaseInsensitiveStringObjectMap) Set(key string, val interface{})

func (CaseInsensitiveStringObjectMap) SetMulti

func (this CaseInsensitiveStringObjectMap) SetMulti(a ...map[string]interface{})

func (CaseInsensitiveStringObjectMap) Subset

func (CaseInsensitiveStringObjectMap) SubsetF

func (this CaseInsensitiveStringObjectMap) SubsetF(f func(key string, val interface{}) bool) CaseInsensitiveStringObjectMap

func (CaseInsensitiveStringObjectMap) ToDB

func (this CaseInsensitiveStringObjectMap) ToDB() (bytes []byte, err error)

func (CaseInsensitiveStringObjectMap) ToLowerKeyMap

func (this CaseInsensitiveStringObjectMap) ToLowerKeyMap() StringObjectMap

func (CaseInsensitiveStringObjectMap) ToStringMap

func (this CaseInsensitiveStringObjectMap) ToStringMap(f ...func(key string, val interface{}) (newKey, newVal string)) StringMap

func (CaseInsensitiveStringObjectMap) TrimEmptyValues

func (this CaseInsensitiveStringObjectMap) TrimEmptyValues(falseAsEmpty ...bool) CaseInsensitiveStringObjectMap

移除值为空的元素。

falseAsEmpty: 是否把 false 当作空值。默认为 true。

func (CaseInsensitiveStringObjectMap) TrimNilValues

func (CaseInsensitiveStringObjectMap) Values

func (this CaseInsensitiveStringObjectMap) Values() (arr []interface{})

type StringMap

type StringMap map[string]string

func FlatStringMap

func FlatStringMap(a interface{}, sep ...string) (StringMap, error)

func FlatStringMapF

func FlatStringMapF(a interface{}, joinKey func(prefix, key string) string) (StringMap, error)

func MustFlatStringMap

func MustFlatStringMap(a interface{}, sep ...string) StringMap

func MustFlatStringMapF

func MustFlatStringMapF(a interface{}, joinKey func(prefix, key string) string) StringMap

func NewStringMap

func NewStringMap(a ...map[string]string) StringMap

func RemoveMapStringDuplicate

func RemoveMapStringDuplicate(arr []StringMap, keys ...string) []StringMap

func ToStringMapSlice

func ToStringMapSlice(src []map[string]string) (dest []StringMap)

func (StringMap) Contains

func (this StringMap) Contains(key string) bool

func (StringMap) ContainsAll

func (this StringMap) ContainsAll(keys []string) bool

func (StringMap) ContainsAny

func (this StringMap) ContainsAny(keys ...string) bool

func (StringMap) Copy

func (this StringMap) Copy() StringMap

func (StringMap) Delete

func (this StringMap) Delete(key ...string)

func (*StringMap) FromDB

func (this *StringMap) FromDB(bytes []byte) error

func (StringMap) Get

func (this StringMap) Get(key string, defaultVal ...string) (val string, found bool)

func (StringMap) GetBool

func (this StringMap) GetBool(key string, defaultVal ...bool) (val bool, found bool, err error)

func (StringMap) GetFloat

func (this StringMap) GetFloat(key string, defaultVal ...float64) (val float64, found bool, err error)

func (StringMap) GetInt

func (this StringMap) GetInt(key string, defaultVal ...int) (val int, found bool, err error)

func (StringMap) GetInt64

func (this StringMap) GetInt64(key string, defaultVal ...int64) (val int64, found bool, err error)

func (StringMap) GetStringMap

func (this StringMap) GetStringMap(key string) (val StringMap, found bool, err error)

func (StringMap) GetStringObjectMap

func (this StringMap) GetStringObjectMap(key string) (val StringObjectMap, found bool, err error)

func (StringMap) GetToObject

func (this StringMap) GetToObject(key string, obj interface{}) (found bool, err error)

func (StringMap) Keys

func (this StringMap) Keys() (arr []string)

func (StringMap) Mapping

func (this StringMap) Mapping(f func(key, val string) (newKey, newVal string)) StringMap

func (StringMap) MustGet

func (this StringMap) MustGet(key string, defaultVal ...string) string

func (StringMap) MustGetBool

func (this StringMap) MustGetBool(key string, defaultVal ...bool) bool

func (StringMap) MustGetFloat

func (this StringMap) MustGetFloat(key string, defaultVal ...float64) float64

func (StringMap) MustGetInt

func (this StringMap) MustGetInt(key string, defaultVal ...int) int

func (StringMap) MustGetInt64

func (this StringMap) MustGetInt64(key string, defaultVal ...int64) int64

func (StringMap) MustGetStringMap

func (this StringMap) MustGetStringMap(key string) (val StringMap)

func (StringMap) MustGetStringObjectMap

func (this StringMap) MustGetStringObjectMap(key string) (val StringObjectMap)

func (StringMap) Set

func (this StringMap) Set(key, val string)

func (StringMap) SetMulti

func (this StringMap) SetMulti(a ...map[string]string)

func (StringMap) Subset

func (this StringMap) Subset(keys ...string) StringMap

func (StringMap) SubsetF

func (this StringMap) SubsetF(f func(key, val string) bool) StringMap

func (StringMap) ToDB

func (this StringMap) ToDB() (bytes []byte, err error)

func (StringMap) ToLowerKeyMap

func (this StringMap) ToLowerKeyMap() StringMap

func (StringMap) ToStringObjectMap

func (this StringMap) ToStringObjectMap(f ...func(key, val string) (newKey string, newVal interface{})) StringObjectMap

func (StringMap) TrimEmptyValues

func (this StringMap) TrimEmptyValues() StringMap

移除值为空的元素。

func (StringMap) Values

func (this StringMap) Values() (arr []string)

func (StringMap) ValuesSortedByKey

func (this StringMap) ValuesSortedByKey() (arr []string)

type StringObjectMap

type StringObjectMap map[string]interface{}

func FlatMap

func FlatMap(a interface{}, sep ...string) (StringObjectMap, error)

func FlatMapF

func FlatMapF(a interface{}, joinKey func(prefix, key string) string) (StringObjectMap, error)

func MustFlatMap

func MustFlatMap(a interface{}, sep ...string) StringObjectMap

func MustFlatMapF

func MustFlatMapF(a interface{}, joinKey func(prefix, key string) string) StringObjectMap

func NewStringObjectMap

func NewStringObjectMap(a ...map[string]interface{}) StringObjectMap

func RemoveMapObjectDuplicate

func RemoveMapObjectDuplicate(arr []StringObjectMap, keys ...string) []StringObjectMap

func ToStringObjectMapSlice

func ToStringObjectMapSlice(src []map[string]interface{}) (dest []StringObjectMap)

func (StringObjectMap) Contains

func (this StringObjectMap) Contains(key string) bool

func (StringObjectMap) ContainsAll

func (this StringObjectMap) ContainsAll(keys []string) bool

func (StringObjectMap) ContainsAny

func (this StringObjectMap) ContainsAny(keys ...string) bool

func (StringObjectMap) Copy

func (this StringObjectMap) Copy() StringObjectMap

func (StringObjectMap) Delete

func (this StringObjectMap) Delete(key ...string)

func (*StringObjectMap) FromDB

func (this *StringObjectMap) FromDB(bytes []byte) error

func (StringObjectMap) Get

func (this StringObjectMap) Get(key string, defaultVal ...interface{}) (val interface{}, found bool)

func (StringObjectMap) GetBool

func (this StringObjectMap) GetBool(key string, defaultVal ...bool) (val bool, found bool, err error)

func (StringObjectMap) GetFloat

func (this StringObjectMap) GetFloat(key string, defaultVal ...float64) (val float64, found bool, err error)

func (StringObjectMap) GetInt

func (this StringObjectMap) GetInt(key string, defaultVal ...int) (val int, found bool, err error)

func (StringObjectMap) GetInt64

func (this StringObjectMap) GetInt64(key string, defaultVal ...int64) (val int64, found bool, err error)

func (StringObjectMap) GetString

func (this StringObjectMap) GetString(key string, defaultVal ...string) (val string, found bool, err error)

func (StringObjectMap) GetStringMap

func (this StringObjectMap) GetStringMap(key string) (val StringMap, found bool, err error)

func (StringObjectMap) GetStringObjectMap

func (this StringObjectMap) GetStringObjectMap(key string) (val StringObjectMap, found bool, err error)

func (StringObjectMap) GetToObject

func (this StringObjectMap) GetToObject(key string, obj interface{}) (found bool, err error)

func (StringObjectMap) Keys

func (this StringObjectMap) Keys() (arr []string)

func (StringObjectMap) Mapping

func (this StringObjectMap) Mapping(f func(key string, val interface{}) (newKey string, newVal interface{})) StringObjectMap

func (StringObjectMap) MustGet

func (this StringObjectMap) MustGet(key string, defaultVal ...interface{}) interface{}

func (StringObjectMap) MustGetBool

func (this StringObjectMap) MustGetBool(key string, defaultVal ...bool) bool

func (StringObjectMap) MustGetFloat

func (this StringObjectMap) MustGetFloat(key string, defaultVal ...float64) float64

func (StringObjectMap) MustGetInt

func (this StringObjectMap) MustGetInt(key string, defaultVal ...int) int

func (StringObjectMap) MustGetInt64

func (this StringObjectMap) MustGetInt64(key string, defaultVal ...int64) int64

func (StringObjectMap) MustGetString

func (this StringObjectMap) MustGetString(key string, defaultVal ...string) string

func (StringObjectMap) MustGetStringMap

func (this StringObjectMap) MustGetStringMap(key string) (val StringMap)

func (StringObjectMap) MustGetStringObjectMap

func (this StringObjectMap) MustGetStringObjectMap(key string) (val StringObjectMap)

func (StringObjectMap) Set

func (this StringObjectMap) Set(key string, val interface{})

func (StringObjectMap) SetMulti

func (this StringObjectMap) SetMulti(a ...map[string]interface{})

func (StringObjectMap) Subset

func (this StringObjectMap) Subset(keys ...string) StringObjectMap

func (StringObjectMap) SubsetF

func (this StringObjectMap) SubsetF(f func(key string, val interface{}) bool) StringObjectMap

func (StringObjectMap) ToDB

func (this StringObjectMap) ToDB() (bytes []byte, err error)

func (StringObjectMap) ToLowerKeyMap

func (this StringObjectMap) ToLowerKeyMap() StringObjectMap

func (StringObjectMap) ToStringMap

func (this StringObjectMap) ToStringMap(f ...func(key string, val interface{}) (newKey, newVal string)) StringMap

func (StringObjectMap) TrimEmptyValues

func (this StringObjectMap) TrimEmptyValues(falseAsEmpty ...bool) StringObjectMap

移除值为空的元素。

falseAsEmpty: 是否把 false 当作空值。默认为 true。

func (StringObjectMap) TrimNilValues

func (this StringObjectMap) TrimNilValues() StringObjectMap

func (StringObjectMap) Values

func (this StringObjectMap) Values() (arr []interface{})

func (StringObjectMap) ValuesSortedByKey

func (this StringObjectMap) ValuesSortedByKey() (arr []interface{})

Jump to

Keyboard shortcuts

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