trie

package
v0.3.1 Latest Latest
Warning

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

Go to latest
Published: Apr 21, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Builder

type Builder interface {
	// Build returns the SuccinctTrie for added kv pairs.
	// Keys shall be sorted before building.
	Build(keys, vals [][]byte, valueWidth uint32) SuccinctTrie

	// Reset resets the underlying data-structure for next use
	Reset()
}

func NewBuilder

func NewBuilder() Builder

NewBuilder returns a new Trie builder.

type Iterator

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

func (*Iterator) Key

func (it *Iterator) Key() []byte

func (*Iterator) Next

func (it *Iterator) Next()

func (*Iterator) Prev

func (it *Iterator) Prev()

func (*Iterator) Reset

func (it *Iterator) Reset()

func (*Iterator) Seek

func (it *Iterator) Seek(key []byte) bool

func (*Iterator) SeekToFirst

func (it *Iterator) SeekToFirst()

func (*Iterator) SeekToLast

func (it *Iterator) SeekToLast()

func (*Iterator) Valid

func (it *Iterator) Valid() bool

func (*Iterator) Value

func (it *Iterator) Value() []byte

type PrefixIterator

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

func (*PrefixIterator) Key

func (itr *PrefixIterator) Key() []byte

func (*PrefixIterator) Next

func (itr *PrefixIterator) Next()

func (*PrefixIterator) Valid

func (itr *PrefixIterator) Valid() bool

func (*PrefixIterator) Value

func (itr *PrefixIterator) Value() []byte

type SuccinctTrie

type SuccinctTrie interface {
	// Get gets the value from trie
	Get(key []byte) ([]byte, bool)
	// MarshalSize is the size after padding
	MarshalSize() int64
	encoding.BinaryMarshaler
	encoding.BinaryUnmarshaler
	Write(w io.Writer) error
	// NewIterator returns a iterator for arbitrarily iterating the trie
	NewIterator() *Iterator
	// NewPrefixIterator returns a iterator for prefix-iterating the trie
	NewPrefixIterator(prefix []byte) *PrefixIterator
}

SuccinctTrie represents a succinct trie

func NewTrie

func NewTrie() SuccinctTrie

NewTrie returns a new empty SuccinctTrie

Jump to

Keyboard shortcuts

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