Versions in this module Expand all Collapse all v0 v0.0.1 Aug 8, 2023 Changes in this version + const MaxArrayLen — darwin/amd64, linux/amd64, windows/amd64 + const MaxBufferSize — darwin/amd64, linux/amd64, windows/amd64 + var NewFile = errors.New("Create a new file") + func Allocators() string + func BytesToUint64Slice(b []byte) []uint64 + func CPUTicks() int64 + func Calloc(n int, tag string) []byte + func CallocNoRef(n int, tag string) []byte + func FastRand() uint32 + func Fibonacci(num int) []float64 + func Free(b []byte) + func GetKeyToHash(emptyKey K) func(any) (uint64, uint64) + func HistogramBounds(minExponent, maxExponent uint32) []float64 + func KeyToHash(key any) (uint64, uint64) + func Leaks() string + func Madvise(b []byte, readahead bool) error + func MemHash(data []byte) uint64 + func MemHashString(str string) uint64 + func Memclr(b []byte) + func Mmap(fd *os.File, writable bool, size int64) ([]byte, error) + func Msync(b []byte) error + func Munmap(b []byte) error + func NanoTime() int64 + func NumAllocBytes() int64 + func ReadMemStats(_ *MemStats) + func SetTmpDir(dir string) + func StatsPrint() + func SyncDir(dir string) error + func ZeroOut(dst []byte, start, end int) + type Allocator struct + Ref uint64 + Tag string + func AllocatorFrom(ref uint64) *Allocator + func NewAllocator(sz int, tag string) *Allocator + func (a *Allocator) Allocate(sz int) []byte + func (a *Allocator) AllocateAligned(sz int) []byte + func (a *Allocator) Allocated() uint64 + func (a *Allocator) Copy(buf []byte) []byte + func (a *Allocator) MaxAlloc() int + func (a *Allocator) Release() + func (a *Allocator) Reset() + func (a *Allocator) Size() int + func (a *Allocator) String() string + func (a *Allocator) TrimTo(max int) + type AllocatorPool struct + func NewAllocatorPool(sz int) *AllocatorPool + func (p *AllocatorPool) Get(sz int, tag string) *Allocator + func (p *AllocatorPool) Release() + func (p *AllocatorPool) Return(a *Allocator) + type Bloom struct + ElemNum uint64 + func JSONUnmarshal(dbData []byte) (*Bloom, error) + func NewBloomFilter(params ...float64) (bloomfilter *Bloom) + func (bl *Bloom) Add(hash uint64) + func (bl *Bloom) AddIfNotHas(hash uint64) bool + func (bl *Bloom) Clear() + func (bl *Bloom) IsSet(idx uint64) bool + func (bl *Bloom) Set(idx uint64) + func (bl *Bloom) Size(sz uint64) + func (bl *Bloom) TotalSize() int + func (bl Bloom) Has(hash uint64) bool + func (bl Bloom) JSONMarshal() []byte + type Buffer struct + func NewBuffer(capacity int, tag string) *Buffer + func NewBufferPersistent(path string, capacity int) (*Buffer, error) + func NewBufferSlice(slice []byte) *Buffer + func NewBufferTmp(dir string, capacity int) (*Buffer, error) + func (b *Buffer) Allocate(n int) []byte + func (b *Buffer) AllocateOffset(n int) int + func (b *Buffer) Bytes() []byte + func (b *Buffer) Data(offset int) []byte + func (b *Buffer) Grow(n int) + func (b *Buffer) IsEmpty() bool + func (b *Buffer) LenNoPadding() int + func (b *Buffer) LenWithPadding() int + func (b *Buffer) Release() error + func (b *Buffer) Reset() + func (b *Buffer) Slice(offset int) ([]byte, int) + func (b *Buffer) SliceAllocate(sz int) []byte + func (b *Buffer) SliceIterate(f func(slice []byte) error) error + func (b *Buffer) SliceOffsets() []int + func (b *Buffer) SortSlice(less func(left, right []byte) bool) + func (b *Buffer) SortSliceBetween(start, end int, less LessFunc) + func (b *Buffer) StartOffset() int + func (b *Buffer) WithAutoMmap(threshold int, path string) *Buffer + func (b *Buffer) WithMaxSize(size int) *Buffer + func (b *Buffer) Write(p []byte) (n int, err error) + func (b *Buffer) WriteSlice(slice []byte) + type BufferType int + const UseCalloc + const UseInvalid + const UseMmap + func (t BufferType) String() string + type Closer struct + func NewCloser(initial int) *Closer + func (lc *Closer) AddRunning(delta int) + func (lc *Closer) Ctx() context.Context + func (lc *Closer) Done() + func (lc *Closer) HasBeenClosed() <-chan struct{} + func (lc *Closer) Signal() + func (lc *Closer) SignalAndWait() + func (lc *Closer) Wait() + type HistogramData struct + Bounds []float64 + Count int64 + CountPerBucket []int64 + Max int64 + Min int64 + Sum int64 + func NewHistogramData(bounds []float64) *HistogramData + func (histogram *HistogramData) Clear() + func (histogram *HistogramData) Copy() *HistogramData + func (histogram *HistogramData) Mean() float64 + func (histogram *HistogramData) Percentile(p float64) float64 + func (histogram *HistogramData) String() string + func (histogram *HistogramData) Update(value int64) + type LessFunc func(a, b []byte) bool + type MemStats struct + Active uint64 + Allocated uint64 + Resident uint64 + Retained uint64 + type MmapFile struct + Data []byte + Fd *os.File + func OpenMmapFile(filename string, flag int, maxSz int) (*MmapFile, error) + func OpenMmapFileUsing(fd *os.File, sz int, writable bool) (*MmapFile, error) + func (m *MmapFile) AllocateSlice(sz, offset int) ([]byte, int, error) + func (m *MmapFile) Bytes(off, sz int) ([]byte, error) + func (m *MmapFile) Close(maxSz int64) error + func (m *MmapFile) Delete() error + func (m *MmapFile) NewReader(offset int) io.Reader + func (m *MmapFile) Slice(offset int) []byte + func (m *MmapFile) Sync() error + func (m *MmapFile) Truncate(maxSz int64) error + type SuperFlag struct + func NewSuperFlag(flag string) *SuperFlag + func (sf *SuperFlag) GetBool(opt string) bool + func (sf *SuperFlag) GetDuration(opt string) time.Duration + func (sf *SuperFlag) GetFloat64(opt string) float64 + func (sf *SuperFlag) GetInt64(opt string) int64 + func (sf *SuperFlag) GetPath(opt string) string + func (sf *SuperFlag) GetString(opt string) string + func (sf *SuperFlag) GetUint32(opt string) uint32 + func (sf *SuperFlag) GetUint64(opt string) uint64 + func (sf *SuperFlag) Has(opt string) bool + func (sf *SuperFlag) MergeAndCheckDefault(flag string) *SuperFlag + func (sf *SuperFlag) String() string + type SuperFlagHelp struct + func NewSuperFlagHelp(defaults string) *SuperFlagHelp + func (h *SuperFlagHelp) Flag(name, description string) *SuperFlagHelp + func (h *SuperFlagHelp) Head(head string) *SuperFlagHelp + func (h *SuperFlagHelp) String() string + type Tree struct + func NewTree(tag string) *Tree + func NewTreePersistent(path string) (*Tree, error) + func (t *Tree) Close() error + func (t *Tree) DeleteBelow(ts uint64) + func (t *Tree) Get(k uint64) uint64 + func (t *Tree) Iterate(fn func(node)) + func (t *Tree) IterateKV(f func(key, val uint64) (newVal uint64)) + func (t *Tree) Print() + func (t *Tree) Reset() + func (t *Tree) Set(k, v uint64) + func (t *Tree) Stats() TreeStats + type TreeStats struct + Allocated int + Bytes int + NumLeafKeys int + NumPages int + NumPagesFree int + Occupancy float64 + PageSize int