Documentation
¶
Index ¶
- Variables
- func Jsonc2Json(jsonc []byte) []byte
- func NewTimeCache[T any](expire time.Duration, getter func() (T, error)) *timeCache[T]
- func RemoveDuplicates[T cmp.Ordered](elements []T) []T
- func RemoveFromSlice[T comparable](source []T, element ...T) []T
- func SliceToMap[T any, K comparable, V any](s []T, keyFn func(*T) K, valueFn func(*T) V) map[K]V
- type JsonMapExprGetter
- type JsonObj
- type JsonTObj
- type OrderedMap
- func (m *OrderedMap[K, V]) Clear()
- func (m *OrderedMap[K, V]) Clone() *OrderedMap[K, V]
- func (m *OrderedMap[K, V]) Get(key K) (v V, ok bool)
- func (m *OrderedMap[K, V]) Keys() []K
- func (m *OrderedMap[K, V]) Len() int
- func (m *OrderedMap[K, V]) Merge(om *OrderedMap[K, V])
- func (m *OrderedMap[K, V]) Put(key K, val V)
- func (m *OrderedMap[K, V]) Range(f func(key K, val V) bool)
- func (m *OrderedMap[K, V]) Remove(key K)
- func (m *OrderedMap[K, V]) ToList() []V
- func (m *OrderedMap[K, V]) ToMap() map[K]V
- type RenewableContext
- func (rc *RenewableContext) Cancel()
- func (*RenewableContext) Deadline() (deadline time.Time, ok bool)
- func (rc *RenewableContext) Done() <-chan struct{}
- func (rc *RenewableContext) Err() error
- func (rc *RenewableContext) Renew(timeout time.Duration)
- func (rc *RenewableContext) Value(key interface{}) interface{}
- type SliceRing
- type TMap
- type TRMap
- type TimeCache
Constants ¶
This section is empty.
Variables ¶
View Source
var JsonMapExpr = JsonMapExprGetter{}
Functions ¶
func Jsonc2Json ¶ added in v0.2.29
func NewTimeCache ¶
func RemoveDuplicates ¶ added in v0.2.29
func RemoveFromSlice ¶ added in v0.2.29
func RemoveFromSlice[T comparable](source []T, element ...T) []T
RemoveFromSlice 从slice中移除指定元素
func SliceToMap ¶ added in v0.2.29
func SliceToMap[T any, K comparable, V any](s []T, keyFn func(*T) K, valueFn func(*T) V) map[K]V
将slice转换为map
Types ¶
type JsonMapExprGetter ¶ added in v0.2.29
type JsonMapExprGetter struct{}
func (JsonMapExprGetter) GetJsonMapValueByExpr ¶ added in v0.2.29
GetJsonMapValueByExpr 从 map[string]any 中根据表达式获取项
func (JsonMapExprGetter) SplitEqual ¶ added in v0.2.29
func (JsonMapExprGetter) SplitEqual(expr string) (key, val string)
SplitEqual 将表达式按 '=' 分割,处理转义字符 '\=' 如果没有一个非转义的 '=' 则将整个表达式作为 key, val 为空
func (JsonMapExprGetter) SplitKey ¶ added in v0.2.29
func (JsonMapExprGetter) SplitKey(expr string) []string
SplitKey 将表达式按 '.' 分割,处理转义字符 '\.'
type JsonTObj ¶ added in v0.2.29
type JsonTObj[T any] struct { OrderedMap[string, T] }
func (JsonTObj[T]) MarshalJSON ¶ added in v0.2.29
MarshalJSON implements the json.Marshaler interface.
func (*JsonTObj[T]) UnmarshalJSON ¶ added in v0.2.29
UnmarshalJSON implements the json.Unmarshaler interface.
type OrderedMap ¶ added in v0.2.29
type OrderedMap[K comparable, V any] struct { // contains filtered or unexported fields }
func (*OrderedMap[K, V]) Clear ¶ added in v0.2.29
func (m *OrderedMap[K, V]) Clear()
func (*OrderedMap[K, V]) Clone ¶ added in v0.2.29
func (m *OrderedMap[K, V]) Clone() *OrderedMap[K, V]
func (*OrderedMap[K, V]) Get ¶ added in v0.2.29
func (m *OrderedMap[K, V]) Get(key K) (v V, ok bool)
func (*OrderedMap[K, V]) Keys ¶ added in v0.2.29
func (m *OrderedMap[K, V]) Keys() []K
func (*OrderedMap[K, V]) Len ¶ added in v0.2.29
func (m *OrderedMap[K, V]) Len() int
func (*OrderedMap[K, V]) Merge ¶ added in v0.2.29
func (m *OrderedMap[K, V]) Merge(om *OrderedMap[K, V])
func (*OrderedMap[K, V]) Put ¶ added in v0.2.29
func (m *OrderedMap[K, V]) Put(key K, val V)
func (*OrderedMap[K, V]) Range ¶ added in v0.2.29
func (m *OrderedMap[K, V]) Range(f func(key K, val V) bool)
func (*OrderedMap[K, V]) Remove ¶ added in v0.2.29
func (m *OrderedMap[K, V]) Remove(key K)
func (*OrderedMap[K, V]) ToList ¶ added in v0.2.29
func (m *OrderedMap[K, V]) ToList() []V
func (*OrderedMap[K, V]) ToMap ¶ added in v0.2.29
func (m *OrderedMap[K, V]) ToMap() map[K]V
type RenewableContext ¶
type RenewableContext struct {
// contains filtered or unexported fields
}
func CtxWithRenewableTimeout ¶ added in v0.2.13
func CtxWithRenewableTimeout(parent context.Context, timeout time.Duration) (*RenewableContext, context.CancelFunc)
func (*RenewableContext) Cancel ¶
func (rc *RenewableContext) Cancel()
func (*RenewableContext) Deadline ¶ added in v0.2.13
func (*RenewableContext) Deadline() (deadline time.Time, ok bool)
func (*RenewableContext) Done ¶
func (rc *RenewableContext) Done() <-chan struct{}
func (*RenewableContext) Err ¶
func (rc *RenewableContext) Err() error
func (*RenewableContext) Renew ¶
func (rc *RenewableContext) Renew(timeout time.Duration)
func (*RenewableContext) Value ¶
func (rc *RenewableContext) Value(key interface{}) interface{}
type SliceRing ¶ added in v0.2.17
type SliceRing[T any] struct { // contains filtered or unexported fields }
func NewSliceRing ¶ added in v0.2.17
Click to show internal directories.
Click to hide internal directories.