gf: github.com/johng-cn/gf/g/container/gmap Index | Files

package gmap

import "github.com/johng-cn/gf/g/container/gmap"

Package gmap provides kinds of concurrent-safe(alternative) maps.

并发安全MAP.

Index

Package Files

gmap.go gmap_func.go gmap_int_bool_map.go gmap_int_int_map.go gmap_int_interface_map.go gmap_int_string_map.go gmap_string_bool_map.go gmap_string_int_map.go gmap_string_interface_map.go gmap_string_string_map.go

type IntBoolMap Uses

type IntBoolMap struct {
    // contains filtered or unexported fields
}

func NewIntBoolMap Uses

func NewIntBoolMap(unsafe ...bool) *IntBoolMap

func NewIntBoolMapFrom Uses

func NewIntBoolMapFrom(m map[int]bool, unsafe ...bool) *IntBoolMap

func NewIntBoolMapFromArray Uses

func NewIntBoolMapFromArray(keys []int, values []bool, unsafe ...bool) *IntBoolMap

func (*IntBoolMap) BatchRemove Uses

func (gm *IntBoolMap) BatchRemove(keys []int)

批量删除键值对

func (*IntBoolMap) BatchSet Uses

func (gm *IntBoolMap) BatchSet(m map[int]bool)

批量设置键值对

func (*IntBoolMap) Clear Uses

func (gm *IntBoolMap) Clear()

清空哈希表

func (*IntBoolMap) Clone Uses

func (gm *IntBoolMap) Clone() *IntBoolMap

哈希表克隆.

func (*IntBoolMap) Contains Uses

func (gm *IntBoolMap) Contains(key int) bool

是否存在某个键

func (*IntBoolMap) Get Uses

func (gm *IntBoolMap) Get(key int) bool

获取键值

func (*IntBoolMap) GetOrSet Uses

func (gm *IntBoolMap) GetOrSet(key int, value bool) bool

当键名存在时返回其键值,否则写入指定的键值

func (*IntBoolMap) GetOrSetFunc Uses

func (gm *IntBoolMap) GetOrSetFunc(key int, f func() bool) bool

当键名存在时返回其键值,否则写入指定的键值,键值由指定的函数生成

func (*IntBoolMap) GetOrSetFuncLock Uses

func (gm *IntBoolMap) GetOrSetFuncLock(key int, f func() bool) bool

与GetOrSetFunc不同的是,f是在写锁机制内执行

func (*IntBoolMap) IsEmpty Uses

func (gm *IntBoolMap) IsEmpty() bool

哈希表是否为空

func (*IntBoolMap) Iterator Uses

func (gm *IntBoolMap) Iterator(f func(k int, v bool) bool)

给定回调函数对原始内容进行遍历,回调函数返回true表示继续遍历,否则停止遍历

func (*IntBoolMap) Keys Uses

func (gm *IntBoolMap) Keys() []int

返回键列表

func (*IntBoolMap) LockFunc Uses

func (gm *IntBoolMap) LockFunc(f func(m map[int]bool))

并发安全锁操作,使用自定义方法执行加锁修改操作

func (*IntBoolMap) Map Uses

func (gm *IntBoolMap) Map() map[int]bool

返回当前哈希表的数据Map.

func (*IntBoolMap) Merge Uses

func (gm *IntBoolMap) Merge(m *IntBoolMap)

合并两个Map.

func (*IntBoolMap) RLockFunc Uses

func (gm *IntBoolMap) RLockFunc(f func(m map[int]bool))

并发安全锁操作,使用自定义方法执行加锁读取操作

func (*IntBoolMap) Remove Uses

func (gm *IntBoolMap) Remove(key int) bool

返回对应的键值,并删除该键值

func (*IntBoolMap) Set Uses

func (gm *IntBoolMap) Set(key int, val bool)

设置键值对

func (*IntBoolMap) SetIfNotExist Uses

func (gm *IntBoolMap) SetIfNotExist(key int, value bool) bool

当键名不存在时写入,并返回true;否则返回false。

func (*IntBoolMap) Size Uses

func (gm *IntBoolMap) Size() int

哈希表大小

type IntIntMap Uses

type IntIntMap struct {
    // contains filtered or unexported fields
}

func NewIntIntMap Uses

func NewIntIntMap(unsafe ...bool) *IntIntMap

func NewIntIntMapFrom Uses

func NewIntIntMapFrom(m map[int]int, unsafe ...bool) *IntIntMap

func NewIntIntMapFromArray Uses

func NewIntIntMapFromArray(keys []int, values []int, unsafe ...bool) *IntIntMap

func (*IntIntMap) BatchRemove Uses

func (gm *IntIntMap) BatchRemove(keys []int)

批量删除键值对

func (*IntIntMap) BatchSet Uses

func (gm *IntIntMap) BatchSet(m map[int]int)

批量设置键值对

func (*IntIntMap) Clear Uses

func (gm *IntIntMap) Clear()

清空哈希表

func (*IntIntMap) Clone Uses

func (gm *IntIntMap) Clone() *IntIntMap

哈希表克隆.

func (*IntIntMap) Contains Uses

func (gm *IntIntMap) Contains(key int) bool

是否存在某个键

func (*IntIntMap) Flip Uses

func (gm *IntIntMap) Flip()

交换Map中的键和值.

func (*IntIntMap) Get Uses

func (gm *IntIntMap) Get(key int) int

获取键值

func (*IntIntMap) GetOrSet Uses

func (gm *IntIntMap) GetOrSet(key int, value int) int

当键名存在时返回其键值,否则写入指定的键值

func (*IntIntMap) GetOrSetFunc Uses

func (gm *IntIntMap) GetOrSetFunc(key int, f func() int) int

当键名存在时返回其键值,否则写入指定的键值,键值由指定的函数生成

func (*IntIntMap) GetOrSetFuncLock Uses

func (gm *IntIntMap) GetOrSetFuncLock(key int, f func() int) int

与GetOrSetFunc不同的是,f是在写锁机制内执行

func (*IntIntMap) IsEmpty Uses

func (gm *IntIntMap) IsEmpty() bool

哈希表是否为空

func (*IntIntMap) Iterator Uses

func (gm *IntIntMap) Iterator(f func(k int, v int) bool)

给定回调函数对原始内容进行遍历,回调函数返回true表示继续遍历,否则停止遍历

func (*IntIntMap) Keys Uses

func (gm *IntIntMap) Keys() []int

返回键列表

func (*IntIntMap) LockFunc Uses

func (gm *IntIntMap) LockFunc(f func(m map[int]int))

并发安全锁操作,使用自定义方法执行加锁修改操作

func (*IntIntMap) Map Uses

func (gm *IntIntMap) Map() map[int]int

返回当前哈希表的数据Map.

func (*IntIntMap) Merge Uses

func (gm *IntIntMap) Merge(m *IntIntMap)

合并两个Map.

func (*IntIntMap) RLockFunc Uses

func (gm *IntIntMap) RLockFunc(f func(m map[int]int))

并发安全锁操作,使用自定义方法执行加锁读取操作

func (*IntIntMap) Remove Uses

func (gm *IntIntMap) Remove(key int) int

返回对应的键值,并删除该键值

func (*IntIntMap) Set Uses

func (gm *IntIntMap) Set(key int, val int)

设置键值对

func (*IntIntMap) SetIfNotExist Uses

func (gm *IntIntMap) SetIfNotExist(key int, value int) bool

当键名不存在时写入,并返回true;否则返回false。

func (*IntIntMap) Size Uses

func (gm *IntIntMap) Size() int

哈希表大小

func (*IntIntMap) Values Uses

func (gm *IntIntMap) Values() []int

返回值列表(注意是随机排序)

type IntInterfaceMap Uses

type IntInterfaceMap struct {
    // contains filtered or unexported fields
}

func NewIntInterfaceMap Uses

func NewIntInterfaceMap(unsafe ...bool) *IntInterfaceMap

func NewIntInterfaceMapFrom Uses

func NewIntInterfaceMapFrom(m map[int]interface{}, unsafe ...bool) *IntInterfaceMap

func NewIntInterfaceMapFromArray Uses

func NewIntInterfaceMapFromArray(keys []int, values []interface{}, unsafe ...bool) *IntInterfaceMap

func (*IntInterfaceMap) BatchRemove Uses

func (gm *IntInterfaceMap) BatchRemove(keys []int)

批量删除键值对

func (*IntInterfaceMap) BatchSet Uses

func (gm *IntInterfaceMap) BatchSet(m map[int]interface{})

批量设置键值对

func (*IntInterfaceMap) Clear Uses

func (gm *IntInterfaceMap) Clear()

清空哈希表

func (*IntInterfaceMap) Clone Uses

func (gm *IntInterfaceMap) Clone() *IntInterfaceMap

哈希表克隆.

func (*IntInterfaceMap) Contains Uses

func (gm *IntInterfaceMap) Contains(key int) bool

是否存在某个键

func (*IntInterfaceMap) Flip Uses

func (gm *IntInterfaceMap) Flip()

交换Map中的键和值.

func (*IntInterfaceMap) Get Uses

func (gm *IntInterfaceMap) Get(key int) interface{}

获取键值

func (*IntInterfaceMap) GetOrSet Uses

func (gm *IntInterfaceMap) GetOrSet(key int, value interface{}) interface{}

当键名存在时返回其键值,否则写入指定的键值

func (*IntInterfaceMap) GetOrSetFunc Uses

func (gm *IntInterfaceMap) GetOrSetFunc(key int, f func() interface{}) interface{}

当键名存在时返回其键值,否则写入指定的键值,键值由指定的函数生成

func (*IntInterfaceMap) GetOrSetFuncLock Uses

func (gm *IntInterfaceMap) GetOrSetFuncLock(key int, f func() interface{}) interface{}

与GetOrSetFunc不同的是,f是在写锁机制内执行

func (*IntInterfaceMap) IsEmpty Uses

func (gm *IntInterfaceMap) IsEmpty() bool

哈希表是否为空

func (*IntInterfaceMap) Iterator Uses

func (gm *IntInterfaceMap) Iterator(f func(k int, v interface{}) bool)

给定回调函数对原始内容进行遍历,回调函数返回true表示继续遍历,否则停止遍历

func (*IntInterfaceMap) Keys Uses

func (gm *IntInterfaceMap) Keys() []int

返回键列表

func (*IntInterfaceMap) LockFunc Uses

func (gm *IntInterfaceMap) LockFunc(f func(m map[int]interface{}))

并发安全锁操作,使用自定义方法执行加锁修改操作

func (*IntInterfaceMap) Map Uses

func (gm *IntInterfaceMap) Map() map[int]interface{}

返回当前哈希表的数据Map.

func (*IntInterfaceMap) Merge Uses

func (gm *IntInterfaceMap) Merge(m *IntInterfaceMap)

合并两个Map.

func (*IntInterfaceMap) RLockFunc Uses

func (gm *IntInterfaceMap) RLockFunc(f func(m map[int]interface{}))

并发安全锁操作,使用自定义方法执行加锁读取操作

func (*IntInterfaceMap) Remove Uses

func (gm *IntInterfaceMap) Remove(key int) interface{}

返回对应的键值,并删除该键值

func (*IntInterfaceMap) Set Uses

func (gm *IntInterfaceMap) Set(key int, val interface{})

设置键值对

func (*IntInterfaceMap) SetIfNotExist Uses

func (gm *IntInterfaceMap) SetIfNotExist(key int, value interface{}) bool

当键名不存在时写入,并返回true;否则返回false。

func (*IntInterfaceMap) Size Uses

func (gm *IntInterfaceMap) Size() int

哈希表大小

func (*IntInterfaceMap) Values Uses

func (gm *IntInterfaceMap) Values() []interface{}

返回值列表(注意是随机排序)

type IntStringMap Uses

type IntStringMap struct {
    // contains filtered or unexported fields
}

func NewIntStringMap Uses

func NewIntStringMap(unsafe ...bool) *IntStringMap

func NewIntStringMapFrom Uses

func NewIntStringMapFrom(m map[int]string, unsafe ...bool) *IntStringMap

func NewIntStringMapFromArray Uses

func NewIntStringMapFromArray(keys []int, values []string, unsafe ...bool) *IntStringMap

func (*IntStringMap) BatchRemove Uses

func (gm *IntStringMap) BatchRemove(keys []int)

批量删除键值对

func (*IntStringMap) BatchSet Uses

func (gm *IntStringMap) BatchSet(m map[int]string)

批量设置键值对

func (*IntStringMap) Clear Uses

func (gm *IntStringMap) Clear()

清空哈希表

func (*IntStringMap) Clone Uses

func (gm *IntStringMap) Clone() *IntStringMap

哈希表克隆.

func (*IntStringMap) Contains Uses

func (gm *IntStringMap) Contains(key int) bool

是否存在某个键

func (*IntStringMap) Flip Uses

func (gm *IntStringMap) Flip()

交换Map中的键和值.

func (*IntStringMap) Get Uses

func (gm *IntStringMap) Get(key int) string

获取键值

func (*IntStringMap) GetOrSet Uses

func (gm *IntStringMap) GetOrSet(key int, value string) string

当键名存在时返回其键值,否则写入指定的键值

func (*IntStringMap) GetOrSetFunc Uses

func (gm *IntStringMap) GetOrSetFunc(key int, f func() string) string

当键名存在时返回其键值,否则写入指定的键值,键值由指定的函数生成

func (*IntStringMap) GetOrSetFuncLock Uses

func (gm *IntStringMap) GetOrSetFuncLock(key int, f func() string) string

与GetOrSetFunc不同的是,f是在写锁机制内执行

func (*IntStringMap) IsEmpty Uses

func (gm *IntStringMap) IsEmpty() bool

哈希表是否为空

func (*IntStringMap) Iterator Uses

func (gm *IntStringMap) Iterator(f func(k int, v string) bool)

给定回调函数对原始内容进行遍历,回调函数返回true表示继续遍历,否则停止遍历

func (*IntStringMap) Keys Uses

func (gm *IntStringMap) Keys() []int

返回键列表

func (*IntStringMap) LockFunc Uses

func (gm *IntStringMap) LockFunc(f func(m map[int]string))

并发安全锁操作,使用自定义方法执行加锁修改操作

func (*IntStringMap) Map Uses

func (gm *IntStringMap) Map() map[int]string

返回当前哈希表的数据Map.

func (*IntStringMap) Merge Uses

func (gm *IntStringMap) Merge(m *IntStringMap)

合并两个Map.

func (*IntStringMap) RLockFunc Uses

func (gm *IntStringMap) RLockFunc(f func(m map[int]string))

并发安全锁操作,使用自定义方法执行加锁读取操作

func (*IntStringMap) Remove Uses

func (gm *IntStringMap) Remove(key int) string

返回对应的键值,并删除该键值

func (*IntStringMap) Set Uses

func (gm *IntStringMap) Set(key int, val string)

设置键值对

func (*IntStringMap) SetIfNotExist Uses

func (gm *IntStringMap) SetIfNotExist(key int, value string) bool

当键名不存在时写入,并返回true;否则返回false。

func (*IntStringMap) Size Uses

func (gm *IntStringMap) Size() int

哈希表大小

func (*IntStringMap) Values Uses

func (gm *IntStringMap) Values() []string

返回值列表(注意是随机排序)

type Map Uses

type Map struct {
    // contains filtered or unexported fields
}

注意: 1、这个Map是所有并发安全Map中效率最低的,如果对效率要求比较高的场合,请合理选择对应数据类型的Map; 2、这个Map的优点是使用简便,由于键值都是interface{}类型,因此对键值的数据类型要求不高; 3、底层实现比较类似于sync.Map;

func New Uses

func New(unsafe ...bool) *Map

Create an empty hash map. The param <unsafe> used to specify whether using map with un-concurrent-safety, which is false in default, means concurrent-safe in default.

创建一个空的哈希表,参数unsafe用于指定是否用于非并发安全场景,默认为false,表示并发安全。

func NewFrom Uses

func NewFrom(m map[interface{}]interface{}, unsafe ...bool) *Map

Create a hash map from given map. Be aware that, the param map is a type of pointer, there might be some concurrent-safe issues when changing the map outside.

基于给定的map变量创建哈希表对象,注意由于map是指针类型,外部对map有操作时会有并发安全问题。

func NewFromArray Uses

func NewFromArray(keys []interface{}, values []interface{}, unsafe ...bool) *Map

Create a hash map from given arrays. The param <keys> given as the keys of the map, and <values> as the corresponding values.

基于给定的数组变量创建哈希表对象,keys作为键名, values作为键值。 当keys数组大小比values数组大时,多余的键名将会使用对应类型默认的键值。

func NewMap Uses

func NewMap(unsafe ...bool) *Map

See New.

同New方法。

func (*Map) BatchRemove Uses

func (gm *Map) BatchRemove(keys []interface{})

Batch remove by keys.

批量删除键值对

func (*Map) BatchSet Uses

func (gm *Map) BatchSet(m map[interface{}]interface{})

Batch set key-values to the hash map.

批量设置键值对

func (*Map) Clear Uses

func (gm *Map) Clear()

Clear the hash map, it will remake a new underlying map data map.

清空哈希表

func (*Map) Clone Uses

func (gm *Map) Clone() *Map

Clone current hash map with copy of underlying data, return a new hash map.

哈希表克隆.

func (*Map) Contains Uses

func (gm *Map) Contains(key interface{}) bool

Check whether a key exist.

是否存在某个键

func (*Map) Flip Uses

func (gm *Map) Flip()

Exchange key-value in the hash map, it will change key-value to value-key.

交换Map中的键和值.

func (*Map) Get Uses

func (gm *Map) Get(key interface{}) interface{}

Get value by key.

获取键值

func (*Map) GetOrSet Uses

func (gm *Map) GetOrSet(key interface{}, value interface{}) interface{}

Get the value by key, or set it with given key-value if not exist.

当键名存在时返回其键值,否则写入指定的键值

func (*Map) GetOrSetFunc Uses

func (gm *Map) GetOrSetFunc(key interface{}, f func() interface{}) interface{}

Get the value by key, or set the it with return of callback function <f> if not exist.

当键名存在时返回其键值,否则写入指定的键值,键值由指定的函数生成

func (*Map) GetOrSetFuncLock Uses

func (gm *Map) GetOrSetFuncLock(key interface{}, f func() interface{}) interface{}

Get the value by key, or set the it with return of callback function <f> if not exist. The difference with GetOrSetFunc is, it locks in executing callback function <f>.

与GetOrSetFunc不同的是,f是在写锁机制内执行

func (*Map) IsEmpty Uses

func (gm *Map) IsEmpty() bool

Check whether the hash map is empty.

哈希表是否为空

func (*Map) Iterator Uses

func (gm *Map) Iterator(f func(k interface{}, v interface{}) bool)

Iterate the hash map with custom callback function <f>. If f returns true, then continue iterating; or false to stop.

给定回调函数对原始内容进行遍历,回调函数返回true表示继续遍历,否则停止遍历

func (*Map) Keys Uses

func (gm *Map) Keys() []interface{}

Return all the keys of hash map as a slice.

返回键列表.

func (*Map) LockFunc Uses

func (gm *Map) LockFunc(f func(m map[interface{}]interface{}))

Lock writing with given callback <f>.

并发安全锁操作,使用自定义方法执行加锁修改操作

func (*Map) Map Uses

func (gm *Map) Map() map[interface{}]interface{}

Returns copy of the data of the hash map.

返回当前哈希表的数据Map.

func (*Map) Merge Uses

func (gm *Map) Merge(m *Map)

Merge two hash maps.

合并两个Map.

func (*Map) RLockFunc Uses

func (gm *Map) RLockFunc(f func(m map[interface{}]interface{}))

Lock reading with given callback <f>.

并发安全锁操作,使用自定义方法执行加锁读取操作

func (*Map) Remove Uses

func (gm *Map) Remove(key interface{}) interface{}

Remove by given key.

返回对应的键值,并删除该键值

func (*Map) Set Uses

func (gm *Map) Set(key interface{}, val interface{})

Set key-value to the hash map.

设置键值对

func (*Map) SetIfNotExist Uses

func (gm *Map) SetIfNotExist(key interface{}, value interface{}) bool

Set key-value if the key does not exist, then return true; or else return false.

当键名不存在时写入,并返回true;否则返回false。

func (*Map) Size Uses

func (gm *Map) Size() int

Get the size of hash map.

哈希表大小

func (*Map) Values Uses

func (gm *Map) Values() []interface{}

Return all the values of hash map as a slice.

返回值列表(注意是随机排序)

type StringBoolMap Uses

type StringBoolMap struct {
    // contains filtered or unexported fields
}

func NewStringBoolMap Uses

func NewStringBoolMap(unsafe ...bool) *StringBoolMap

func NewStringBoolMapFrom Uses

func NewStringBoolMapFrom(m map[string]bool, unsafe ...bool) *StringBoolMap

func NewStringBoolMapFromArray Uses

func NewStringBoolMapFromArray(keys []string, values []bool, unsafe ...bool) *StringBoolMap

func (*StringBoolMap) BatchRemove Uses

func (gm *StringBoolMap) BatchRemove(keys []string)

批量删除键值对

func (*StringBoolMap) BatchSet Uses

func (gm *StringBoolMap) BatchSet(m map[string]bool)

批量设置键值对

func (*StringBoolMap) Clear Uses

func (gm *StringBoolMap) Clear()

清空哈希表

func (*StringBoolMap) Clone Uses

func (gm *StringBoolMap) Clone() *StringBoolMap

哈希表克隆.

func (*StringBoolMap) Contains Uses

func (gm *StringBoolMap) Contains(key string) bool

是否存在某个键

func (*StringBoolMap) Get Uses

func (gm *StringBoolMap) Get(key string) bool

获取键值

func (*StringBoolMap) GetOrSet Uses

func (gm *StringBoolMap) GetOrSet(key string, value bool) bool

当键名存在时返回其键值,否则写入指定的键值

func (*StringBoolMap) GetOrSetFunc Uses

func (gm *StringBoolMap) GetOrSetFunc(key string, f func() bool) bool

当键名存在时返回其键值,否则写入指定的键值,键值由指定的函数生成

func (*StringBoolMap) GetOrSetFuncLock Uses

func (gm *StringBoolMap) GetOrSetFuncLock(key string, f func() bool) bool

与GetOrSetFunc不同的是,f是在写锁机制内执行

func (*StringBoolMap) IsEmpty Uses

func (gm *StringBoolMap) IsEmpty() bool

哈希表是否为空

func (*StringBoolMap) Iterator Uses

func (gm *StringBoolMap) Iterator(f func(k string, v bool) bool)

给定回调函数对原始内容进行遍历,回调函数返回true表示继续遍历,否则停止遍历

func (*StringBoolMap) Keys Uses

func (gm *StringBoolMap) Keys() []string

返回键列表

func (*StringBoolMap) LockFunc Uses

func (gm *StringBoolMap) LockFunc(f func(m map[string]bool))

并发安全锁操作,使用自定义方法执行加锁修改操作

func (*StringBoolMap) Map Uses

func (gm *StringBoolMap) Map() map[string]bool

返回当前哈希表的数据Map.

func (*StringBoolMap) Merge Uses

func (gm *StringBoolMap) Merge(m *StringBoolMap)

合并两个Map.

func (*StringBoolMap) RLockFunc Uses

func (gm *StringBoolMap) RLockFunc(f func(m map[string]bool))

并发安全锁操作,使用自定义方法执行加锁读取操作

func (*StringBoolMap) Remove Uses

func (gm *StringBoolMap) Remove(key string) bool

返回对应的键值,并删除该键值

func (*StringBoolMap) Set Uses

func (gm *StringBoolMap) Set(key string, val bool)

设置键值对

func (*StringBoolMap) SetIfNotExist Uses

func (gm *StringBoolMap) SetIfNotExist(key string, value bool) bool

当键名不存在时写入,并返回true;否则返回false。

func (*StringBoolMap) Size Uses

func (gm *StringBoolMap) Size() int

哈希表大小

type StringIntMap Uses

type StringIntMap struct {
    // contains filtered or unexported fields
}

func NewStringIntMap Uses

func NewStringIntMap(unsafe ...bool) *StringIntMap

func NewStringIntMapFrom Uses

func NewStringIntMapFrom(m map[string]int, unsafe ...bool) *StringIntMap

func NewStringIntMapFromArray Uses

func NewStringIntMapFromArray(keys []string, values []int, unsafe ...bool) *StringIntMap

func (*StringIntMap) BatchRemove Uses

func (gm *StringIntMap) BatchRemove(keys []string)

批量删除键值对

func (*StringIntMap) BatchSet Uses

func (gm *StringIntMap) BatchSet(m map[string]int)

批量设置键值对

func (*StringIntMap) Clear Uses

func (gm *StringIntMap) Clear()

清空哈希表

func (*StringIntMap) Clone Uses

func (gm *StringIntMap) Clone() *StringIntMap

哈希表克隆.

func (*StringIntMap) Contains Uses

func (gm *StringIntMap) Contains(key string) bool

是否存在某个键

func (*StringIntMap) Flip Uses

func (gm *StringIntMap) Flip()

交换Map中的键和值.

func (*StringIntMap) Get Uses

func (gm *StringIntMap) Get(key string) int

获取键值

func (*StringIntMap) GetOrSet Uses

func (gm *StringIntMap) GetOrSet(key string, value int) int

当键名存在时返回其键值,否则写入指定的键值

func (*StringIntMap) GetOrSetFunc Uses

func (gm *StringIntMap) GetOrSetFunc(key string, f func() int) int

当键名存在时返回其键值,否则写入指定的键值,键值由指定的函数生成

func (*StringIntMap) GetOrSetFuncLock Uses

func (gm *StringIntMap) GetOrSetFuncLock(key string, f func() int) int

与GetOrSetFunc不同的是,f是在写锁机制内执行

func (*StringIntMap) IsEmpty Uses

func (gm *StringIntMap) IsEmpty() bool

哈希表是否为空

func (*StringIntMap) Iterator Uses

func (gm *StringIntMap) Iterator(f func(k string, v int) bool)

给定回调函数对原始内容进行遍历,回调函数返回true表示继续遍历,否则停止遍历

func (*StringIntMap) Keys Uses

func (gm *StringIntMap) Keys() []string

返回键列表

func (*StringIntMap) LockFunc Uses

func (gm *StringIntMap) LockFunc(f func(m map[string]int))

并发安全写锁操作,使用自定义方法执行加锁修改操作

func (*StringIntMap) Map Uses

func (gm *StringIntMap) Map() map[string]int

返回当前哈希表的数据Map.

func (*StringIntMap) Merge Uses

func (gm *StringIntMap) Merge(m *StringIntMap)

合并两个Map.

func (*StringIntMap) RLockFunc Uses

func (gm *StringIntMap) RLockFunc(f func(m map[string]int))

并发安全读锁操作,使用自定义方法执行加锁读取操作

func (*StringIntMap) Remove Uses

func (gm *StringIntMap) Remove(key string) int

返回对应的键值,并删除该键值

func (*StringIntMap) Set Uses

func (gm *StringIntMap) Set(key string, val int)

设置键值对

func (*StringIntMap) SetIfNotExist Uses

func (gm *StringIntMap) SetIfNotExist(key string, value int) bool

当键名不存在时写入,并返回true;否则返回false。

func (*StringIntMap) Size Uses

func (gm *StringIntMap) Size() int

哈希表大小

func (*StringIntMap) Values Uses

func (gm *StringIntMap) Values() []int

返回值列表(注意是随机排序)

type StringInterfaceMap Uses

type StringInterfaceMap struct {
    // contains filtered or unexported fields
}

func NewStringInterfaceMap Uses

func NewStringInterfaceMap(unsafe ...bool) *StringInterfaceMap

func NewStringInterfaceMapFrom Uses

func NewStringInterfaceMapFrom(m map[string]interface{}, unsafe ...bool) *StringInterfaceMap

func NewStringInterfaceMapFromArray Uses

func NewStringInterfaceMapFromArray(keys []string, values []interface{}, unsafe ...bool) *StringInterfaceMap

func (*StringInterfaceMap) BatchRemove Uses

func (gm *StringInterfaceMap) BatchRemove(keys []string)

批量删除键值对

func (*StringInterfaceMap) BatchSet Uses

func (gm *StringInterfaceMap) BatchSet(m map[string]interface{})

批量设置键值对

func (*StringInterfaceMap) Clear Uses

func (gm *StringInterfaceMap) Clear()

清空哈希表

func (*StringInterfaceMap) Clone Uses

func (gm *StringInterfaceMap) Clone() *StringInterfaceMap

哈希表克隆.

func (*StringInterfaceMap) Contains Uses

func (gm *StringInterfaceMap) Contains(key string) bool

是否存在某个键

func (*StringInterfaceMap) Flip Uses

func (gm *StringInterfaceMap) Flip()

交换Map中的键和值.

func (*StringInterfaceMap) Get Uses

func (gm *StringInterfaceMap) Get(key string) interface{}

获取键值

func (*StringInterfaceMap) GetOrSet Uses

func (gm *StringInterfaceMap) GetOrSet(key string, value interface{}) interface{}

当键名存在时返回其键值,否则写入指定的键值

func (*StringInterfaceMap) GetOrSetFunc Uses

func (gm *StringInterfaceMap) GetOrSetFunc(key string, f func() interface{}) interface{}

当键名存在时返回其键值,否则写入指定的键值,键值由指定的函数生成

func (*StringInterfaceMap) GetOrSetFuncLock Uses

func (gm *StringInterfaceMap) GetOrSetFuncLock(key string, f func() interface{}) interface{}

与GetOrSetFunc不同的是,f是在写锁机制内执行

func (*StringInterfaceMap) IsEmpty Uses

func (gm *StringInterfaceMap) IsEmpty() bool

哈希表是否为空

func (*StringInterfaceMap) Iterator Uses

func (gm *StringInterfaceMap) Iterator(f func(k string, v interface{}) bool)

给定回调函数对原始内容进行遍历,回调函数返回true表示继续遍历,否则停止遍历

func (*StringInterfaceMap) Keys Uses

func (gm *StringInterfaceMap) Keys() []string

返回键列表

func (*StringInterfaceMap) LockFunc Uses

func (gm *StringInterfaceMap) LockFunc(f func(m map[string]interface{}))

并发安全写锁操作,使用自定义方法执行加锁修改操作

func (*StringInterfaceMap) Map Uses

func (gm *StringInterfaceMap) Map() map[string]interface{}

返回当前哈希表的数据Map.

func (*StringInterfaceMap) Merge Uses

func (gm *StringInterfaceMap) Merge(m *StringInterfaceMap)

合并两个Map.

func (*StringInterfaceMap) RLockFunc Uses

func (gm *StringInterfaceMap) RLockFunc(f func(m map[string]interface{}))

并发安全读锁操作,使用自定义方法执行加锁读取操作

func (*StringInterfaceMap) Remove Uses

func (gm *StringInterfaceMap) Remove(key string) interface{}

返回对应的键值,并删除该键值

func (*StringInterfaceMap) Set Uses

func (gm *StringInterfaceMap) Set(key string, val interface{})

设置键值对

func (*StringInterfaceMap) SetIfNotExist Uses

func (gm *StringInterfaceMap) SetIfNotExist(key string, value interface{}) bool

当键名不存在时写入,并返回true;否则返回false。

func (*StringInterfaceMap) Size Uses

func (gm *StringInterfaceMap) Size() int

哈希表大小

func (*StringInterfaceMap) Values Uses

func (gm *StringInterfaceMap) Values() []interface{}

返回值列表(注意是随机排序)

type StringStringMap Uses

type StringStringMap struct {
    // contains filtered or unexported fields
}

func NewStringStringMap Uses

func NewStringStringMap(unsafe ...bool) *StringStringMap

func NewStringStringMapFrom Uses

func NewStringStringMapFrom(m map[string]string, unsafe ...bool) *StringStringMap

func NewStringStringMapFromArray Uses

func NewStringStringMapFromArray(keys []string, values []string, unsafe ...bool) *StringStringMap

func (*StringStringMap) BatchRemove Uses

func (gm *StringStringMap) BatchRemove(keys []string)

批量删除键值对

func (*StringStringMap) BatchSet Uses

func (gm *StringStringMap) BatchSet(m map[string]string)

批量设置键值对

func (*StringStringMap) Clear Uses

func (gm *StringStringMap) Clear()

清空哈希表

func (*StringStringMap) Clone Uses

func (gm *StringStringMap) Clone() *StringStringMap

哈希表克隆.

func (*StringStringMap) Contains Uses

func (gm *StringStringMap) Contains(key string) bool

是否存在某个键

func (*StringStringMap) Flip Uses

func (gm *StringStringMap) Flip()

交换Map中的键和值.

func (*StringStringMap) Get Uses

func (gm *StringStringMap) Get(key string) string

获取键值

func (*StringStringMap) GetOrSet Uses

func (gm *StringStringMap) GetOrSet(key string, value string) string

当键名存在时返回其键值,否则写入指定的键值

func (*StringStringMap) GetOrSetFunc Uses

func (gm *StringStringMap) GetOrSetFunc(key string, f func() string) string

当键名存在时返回其键值,否则写入指定的键值,键值由指定的函数生成

func (*StringStringMap) GetOrSetFuncLock Uses

func (gm *StringStringMap) GetOrSetFuncLock(key string, f func() string) string

与GetOrSetFunc不同的是,f是在写锁机制内执行

func (*StringStringMap) IsEmpty Uses

func (gm *StringStringMap) IsEmpty() bool

哈希表是否为空

func (*StringStringMap) Iterator Uses

func (gm *StringStringMap) Iterator(f func(k string, v string) bool)

给定回调函数对原始内容进行遍历,回调函数返回true表示继续遍历,否则停止遍历

func (*StringStringMap) Keys Uses

func (gm *StringStringMap) Keys() []string

返回键列表

func (*StringStringMap) LockFunc Uses

func (gm *StringStringMap) LockFunc(f func(m map[string]string))

并发安全写锁操作,使用自定义方法执行加锁修改操作

func (*StringStringMap) Map Uses

func (gm *StringStringMap) Map() map[string]string

返回当前哈希表的数据Map.

func (*StringStringMap) Merge Uses

func (gm *StringStringMap) Merge(m *StringStringMap)

合并两个Map.

func (*StringStringMap) RLockFunc Uses

func (gm *StringStringMap) RLockFunc(f func(m map[string]string))

并发安全读锁操作,使用自定义方法执行加锁读取操作

func (*StringStringMap) Remove Uses

func (gm *StringStringMap) Remove(key string) string

返回对应的键值,并删除该键值

func (*StringStringMap) Set Uses

func (gm *StringStringMap) Set(key string, val string)

设置键值对

func (*StringStringMap) SetIfNotExist Uses

func (gm *StringStringMap) SetIfNotExist(key string, value string) bool

当键名不存在时写入,并返回true;否则返回false。

func (*StringStringMap) Size Uses

func (gm *StringStringMap) Size() int

哈希表大小

func (*StringStringMap) Values Uses

func (gm *StringStringMap) Values() []string

返回值列表(注意是随机排序)

Package gmap imports 2 packages (graph). Updated 2019-02-03. Refresh now. Tools for package owners.