Documentation
¶
Index ¶
- func ExtractField[T any, V any](slice []T, extractFn func(T) V) []V
- func GetOrDefault[K comparable, V any](m map[K]V, key K, defaultVal V) V
- func SliceToMap[T any, K comparable, V any](slice []T, keyFn func(T) K, valFn func(T) V) map[K]V
- func StructSliceToMap[T any, K comparable](slice []T, keyFn func(T) K) map[K]T
- type MapBuilder
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ExtractField ¶
ExtractField 从结构体切片中提取某个字段组成新切片
func GetOrDefault ¶
func GetOrDefault[K comparable, V any](m map[K]V, key K, defaultVal V) V
GetOrDefault 获取map中的值,如果不存在则返回默认值
func SliceToMap ¶
func SliceToMap[T any, K comparable, V any](slice []T, keyFn func(T) K, valFn func(T) V) map[K]V
SliceToMap 将任意切片转换为map T: 切片中元素类型, K: 键类型, V: 值类型
func StructSliceToMap ¶
func StructSliceToMap[T any, K comparable](slice []T, keyFn func(T) K) map[K]T
StructSliceToMap 将结构体切片转换为map,键为结构体的某个字段,值为结构体本身
Types ¶
type MapBuilder ¶
type MapBuilder[K comparable, V any] struct { // contains filtered or unexported fields }
MapBuilder 构建常量映射表的工具
func NewMapBuilder ¶
func NewMapBuilder[K comparable, V any]() *MapBuilder[K, V]
NewMapBuilder 创建一个新的映射构建器
func (*MapBuilder[K, V]) BuildImmutable ¶
func (m *MapBuilder[K, V]) BuildImmutable() func(key K) (V, bool)
BuildImmutable 构建不可变映射(返回一个获取函数)
func (*MapBuilder[K, V]) Put ¶
func (m *MapBuilder[K, V]) Put(key K, value V) *MapBuilder[K, V]
Put 添加一个键值对
func (*MapBuilder[K, V]) PutAll ¶
func (m *MapBuilder[K, V]) PutAll(entries map[K]V) *MapBuilder[K, V]
PutAll 批量添加键值对
Click to show internal directories.
Click to hide internal directories.