Leaderboard
目录导航
列出了该 package 下所有的函数及类型定义,可通过目录导航进行快捷跳转 ❤️
展开 / 折叠目录导航
包级函数定义
| 函数名称 | 描述 |
|---|---|
| NewBinarySearch | 创建一个基于内存的二分查找排行榜 |
| WithBinarySearchCount | 通过限制排行榜竞争者数量来创建排行榜 |
| WithBinarySearchASC | 通过升序的方式创建排行榜 |
类型定义
| 类型 | 名称 | 描述 |
|---|---|---|
STRUCT |
BinarySearch | 暂无描述... |
STRUCT |
BinarySearchRankChangeEventHandle | 暂无描述... |
STRUCT |
BinarySearchOption | 暂无描述... |
详情信息
func NewBinarySearch(options ...BinarySearchOption[CompetitorID, Score]) *BinarySearch[CompetitorID, Score]
创建一个基于内存的二分查找排行榜
示例代码:
func ExampleNewBinarySearch() {
bs := leaderboard2.NewBinarySearch[string, int](leaderboard2.WithBinarySearchCount[string, int](10))
fmt.Println(bs != nil)
}
func WithBinarySearchCount(rankCount int) BinarySearchOption[CompetitorID, Score]
通过限制排行榜竞争者数量来创建排行榜
- 默认情况下允许100位竞争者
func WithBinarySearchASC() BinarySearchOption[CompetitorID, Score]
通过升序的方式创建排行榜
- 默认情况下为降序
BinarySearch STRUCT
type BinarySearch[CompetitorID comparable, Score generic.Ordered] struct {
*binarySearchEvent[CompetitorID, Score]
asc bool
rankCount int
competitors *mappings.SyncMap[CompetitorID, Score]
scores []*scoreItem[CompetitorID, Score]
rankChangeEventHandles []BinarySearchRankChangeEventHandle[CompetitorID, Score]
rankClearBeforeEventHandles []BinarySearchRankClearBeforeEventHandle[CompetitorID, Score]
}
BinarySearchRankChangeEventHandle STRUCT
type BinarySearchRankChangeEventHandle[CompetitorID comparable, Score generic.Ordered] func(leaderboard *BinarySearch[CompetitorID, Score], competitorId CompetitorID, oldRank int, oldScore Score)
BinarySearchOption STRUCT
type BinarySearchOption[CompetitorID comparable, Score generic.Ordered] func(list *BinarySearch[CompetitorID, Score])