db

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 28, 2022 License: AGPL-3.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Cacher

type Cacher struct {
	// contains filtered or unexported fields
}

func NewCacher

func NewCacher(capacity, ttlsecs int, fn func() Objecter) *Cacher

func (*Cacher) GetObject

func (c *Cacher) GetObject(key []byte) (any, bool)

func (*Cacher) SetObject

func (c *Cacher) SetObject(key []byte, value any) error

func (*Cacher) UnmarshalObject

func (c *Cacher) UnmarshalObject(data []byte) (any, error)

type ObjectCacher

type ObjectCacher interface {
	GetObject(key []byte) (any, bool)
	SetObject(key []byte, value any) error
	UnmarshalObject(data []byte) (any, error)
}

type Objecter

type Objecter interface {
	Unmarshal([]byte) error
}

type PrefixDB

type PrefixDB struct {
	// contains filtered or unexported fields
}

func NewPrefixDB

func NewPrefixDB(db database.Database, prefix []byte, keyBufSize int) *PrefixDB

func (*PrefixDB) Delete

func (p *PrefixDB) Delete(key []byte) error

func (*PrefixDB) Get

func (p *PrefixDB) Get(key []byte) ([]byte, error)

func (*PrefixDB) Has

func (p *PrefixDB) Has(key []byte) (bool, error)

func (*PrefixDB) LoadObject

func (p *PrefixDB) LoadObject(key []byte, c ObjectCacher) (any, error)

func (*PrefixDB) Put

func (p *PrefixDB) Put(key, value []byte) error

func (*PrefixDB) SetHashKey

func (p *PrefixDB) SetHashKey(fn func([]byte) []byte)

func (*PrefixDB) With

func (p *PrefixDB) With(prefix []byte) *PrefixDB

type RawObject

type RawObject []byte

func (*RawObject) Unmarshal

func (r *RawObject) Unmarshal(data []byte) error

type Verifier

type Verifier interface {
	SyntacticVerify() error
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL