Versions in this module Expand all Collapse all v1 v1.2.0 Apr 26, 2021 Changes in this version + const Byte + const ByteAsc + const ByteDesc + const Bytes + const BytesAsc + const BytesDesc + const Float32 + const Float32Asc + const Float32Desc + const Float64 + const Float64Asc + const Float64Desc + const Int + const Int16 + const Int16Asc + const Int16Desc + const Int32 + const Int32Asc + const Int32Desc + const Int64 + const Int64Asc + const Int64Desc + const Int8 + const Int8Asc + const Int8Desc + const IntAsc + const IntDesc + const Rune + const RuneAsc + const RuneDesc + const String + const StringAsc + const StringDesc + const Uint + const Uint16 + const Uint16Asc + const Uint16Desc + const Uint32 + const Uint32Asc + const Uint32Desc + const Uint64 + const Uint64Asc + const Uint64Desc + const Uint8 + const Uint8Asc + const Uint8Desc + const UintAsc + const UintDesc + const Uintptr + const UintptrAsc + const UintptrDesc + var DefaultMaxLevel = 48 + func CalcScore(key interface{}) (score float64) + type Comparable interface + CalcScore func(key interface{}) float64 + Compare func(lhs, rhs interface{}) int + func Reverse(comparable Comparable) Comparable + type Element struct + Value interface{} + func (elem *Element) Key() interface{} + func (elem *Element) Level() int + func (elem *Element) Next() *Element + func (elem *Element) NextLevel(level int) *Element + func (elem *Element) Prev() *Element + func (elem *Element) PrevLevel(level int) *Element + func (elem *Element) Score() float64 + func (header *Element) Element() *Element + type GreaterThanFunc func(lhs, rhs interface{}) int + func (f GreaterThanFunc) CalcScore(key interface{}) float64 + func (f GreaterThanFunc) Compare(lhs, rhs interface{}) int + type LessThanFunc GreaterThanFunc + func (f LessThanFunc) CalcScore(key interface{}) float64 + func (f LessThanFunc) Compare(lhs, rhs interface{}) int + type Scorable interface + Score func() float64 + type SkipList struct + func New(comparable Comparable) *SkipList + func (header *SkipList) Element() *Element + func (list *SkipList) Back() *Element + func (list *SkipList) FindLowerBound(key interface{}) (elem *Element) + func (list *SkipList) Front() (front *Element) + func (list *SkipList) Get(key interface{}) (elem *Element) + func (list *SkipList) GetValue(key interface{}) (val interface{}, ok bool) + func (list *SkipList) Init() *SkipList + func (list *SkipList) Len() int + func (list *SkipList) MaxLevel() int + func (list *SkipList) MustGetValue(key interface{}) interface{} + func (list *SkipList) Remove(key interface{}) (elem *Element) + func (list *SkipList) RemoveBack() (back *Element) + func (list *SkipList) RemoveElement(elem *Element) + func (list *SkipList) RemoveFront() (front *Element) + func (list *SkipList) Set(key, value interface{}) (elem *Element) + func (list *SkipList) SetMaxLevel(level int) (old int) + func (list *SkipList) SetRandSource(source rand.Source)