Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildKeyFunc ¶
func BuildKeyFunc[T any](builder KeyBuilder[T]) func(*T) string
BuildKeyFunc 将 KeyBuilder 转换为函数
func QuickBuildKey ¶
QuickBuildKey 快速构建键的辅助函数 用于一次性构建,不需要保存 builder 实例
Types ¶
type FuncKeyBuilder ¶
type FuncKeyBuilder[T any] struct { // contains filtered or unexported fields }
FuncKeyBuilder 基于自定义函数的键构建器
func NewFuncKeyBuilder ¶
func NewFuncKeyBuilder[T any](buildFunc func(*T) string) *FuncKeyBuilder[T]
NewFuncKeyBuilder 创建函数式键构建器
func (*FuncKeyBuilder[T]) BuildKey ¶
func (kb *FuncKeyBuilder[T]) BuildKey(data *T) string
BuildKey 实现 KeyBuilder 接口
type KeyBuilder ¶
KeyBuilder 缓存键构建器接口 开发者可以实现此接口来自定义键生成逻辑
func DefaultKeyBuilder ¶
func DefaultKeyBuilder[T any](template string) KeyBuilder[T]
DefaultKeyBuilder 创建默认的键构建器(基于模板)
type PrefixKeyBuilder ¶
type PrefixKeyBuilder[T any] struct { // contains filtered or unexported fields }
PrefixKeyBuilder 前缀键构建器 简单在 ID 前加前缀: "prefix:123"
func NewPrefixKeyBuilder ¶
func NewPrefixKeyBuilder[T any](prefix string, idExtractor func(*T) interface{}) *PrefixKeyBuilder[T]
NewPrefixKeyBuilder 创建前缀键构建器
func (*PrefixKeyBuilder[T]) BuildKey ¶
func (kb *PrefixKeyBuilder[T]) BuildKey(data *T) string
BuildKey 实现 KeyBuilder 接口
type TemplateKeyBuilder ¶
type TemplateKeyBuilder[T any] struct { // contains filtered or unexported fields }
TemplateKeyBuilder 基于模板的键构建器 支持模板语法: "cache:user:{id}" 或 "cache:product:{id}:{category}"
func NewTemplateKeyBuilder ¶
func NewTemplateKeyBuilder[T any](template string) *TemplateKeyBuilder[T]
NewTemplateKeyBuilder 创建模板键构建器 示例模板:
- "cache:user:{id}"
- "cache:product:{id}:{category}"
- "session:{user_id}:{device_id}"
func (*TemplateKeyBuilder[T]) BuildKey ¶
func (kb *TemplateKeyBuilder[T]) BuildKey(data *T) string
BuildKey 实现 KeyBuilder 接口
Click to show internal directories.
Click to hide internal directories.